dfs+记忆化搜索,求任意两点之间的最长路径
题意:n个点,m条边组成的有向图,求任意两点之间的最长路径
dfs记忆化搜索
#include<iostream>
#include<string.h>
#include<string>
#include<algorithm>
#include<math.h>
#include<string>
#include<string.h>
#include<vector>
#include<utility>
#include<map>
#include<queue>
#include<set>
#define mx 0x3f3f3f3f
#define ll long long
using namespace std;
int dis[1005],way[1005][1005],vis[1005],flag[1005];
int n,m;
int dfs(int x)
{
if(vis[x]==1)
return dis[x];
for(int i=1;i<=n;i++)
{
if(way[x][i]!=0)
dis[x]=max(dis[x],dfs(i)+way[x][i]);//dis[x]表示以x为起点能走的最长路径是dis[x]
}
vis[x]=1;
return dis[x];
}
int main()
{
cin>>n>>m;
for(int i=0;i<m;i++)
{
int x,y,z;
cin>>x>>y>>z;
flag[y]=1;//标记终点
if(way[x][y]!=0)
way[x][y]=max(way[x][y],z);
else
way[x][y]=z;
}
int ans=0;
for(int i=1;i<=n;i++)//枚举搜索起点
{
if(flag[i]==0)//给的是有向图,只能从有向图的起点开始搜索
ans=max(ans,dfs(i));
}
cout<<ans<<endl;
return 0;
}
/*
5 5
1 2 15
2 3 12
1 4 17
4 2 11
5 4 9 6 6
1 2 2
4 5 2
2 3 3
1 3 2
5 6 2
1 2 4
*/
dfs+记忆化搜索,求任意两点之间的最长路径的更多相关文章
- 不要62 hdu 2089 dfs记忆化搜索
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2089 题意: 给你两个数作为一个闭区间的端点,求出该区间中不包含数字4和62的数的个数 思路: 数位dp中 ...
- 8636 跳格子(dfs+记忆化搜索)
8636 跳格子 该题有题解 时间限制:2457MS 内存限制:1000K提交次数:139 通过次数:46 题型: 编程题 语言: G++;GCC Description 地上有一个n*m 的数 ...
- POJ 1191 棋盘分割 【DFS记忆化搜索经典】
题目传送门:http://poj.org/problem?id=1191 棋盘分割 Time Limit: 1000MS Memory Limit: 10000K Total Submission ...
- hdu 1078(dfs记忆化搜索)
题意:容易理解... 思路:我开始是用dfs剪枝做的,968ms险过的,后来在网上学习了记忆化搜索=深搜形式+dp思想,时间复杂度大大降低,我个人理解,就是从某一个点出发,前面的点是由后面的点求出的, ...
- UVA 10400 Game Show Math (dfs + 记忆化搜索)
Problem H Game Show Math Input: standard input Output: standard output Time Limit: 15 seconds A game ...
- DFS——>记忆化搜索——>动态规划
以洛谷P1802 5倍经验日 为例 https://www.luogu.org/problem/show?pid=1802 题目背景 现在乐斗有活动了!每打一个人可以获得5倍经验!absi2011却 ...
- kuangbin专题十二 HDU1078 FatMouse and Cheese )(dp + dfs 记忆化搜索)
FatMouse and Cheese Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...
- 蓝桥杯 2014本科C++ B组 地宫取宝 DFS+记忆化搜索
历届试题 地宫取宝 时间限制:1.0s 内存限制:256.0MB 问题描述 X 国王有一个地宫宝库.是 n x m 个格子的矩阵.每个格子放一件宝贝.每个宝贝贴着价值标签. 地宫的入口在左上角 ...
- 牛客假日团队赛5 F 随机数 BZOJ 1662: [Usaco2006 Nov]Round Numbers 圆环数 (dfs记忆化搜索的数位DP)
链接:https://ac.nowcoder.com/acm/contest/984/F 来源:牛客网 随机数 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6 ...
随机推荐
- pandas读取文件的read_csv()方法
import pandas as pd pd.read_csv(filepath_or_buffer,header,parse_dates,index_col) 返回数据类型:DataFrame:二维 ...
- stm32 串口发送字符串丢失第一个字节
使用stm32f103调试串口通讯时,上电后发送的字符串的第一个字节丢失. 发送数据GpuSend("SPG(2);"); 接收端收到的数据为:PG(2);,第一个字符丢失. 出现 ...
- 修复GRUB引导故障!
故障原因:MBR中的GRUB引导程序遭到破坏,grub.conf文件丢失,引导配置有误 故障现象:系统引导停滞,显示“grub>”提示符 解决思路:若无MBR备份,进入急救模式,重新安装grub ...
- arcPy实现要素图层数据的复制(选择特定字段填写属性)
>>> import arcpy>>> fc=r"D:\楚雄州数据\testdata.gdb">>> editor=arcpy ...
- c# 分页 PaginatedList<TResult>
using System; using System.Collections.Generic; using System.Linq; namespace Microestc.PaginatedList ...
- Maven打包项目失败;报错:Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.1.1:war (default-war) on project Hello: Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/we
报错信息: E:\MIKEY\mikey\HTML5\TestMaven_01>mvn package [INFO] Scanning for projects... [INFO] [INFO] ...
- 十四 OGNL的概述
1 什么是OGNL? 对象图导航语言(对象图,以任意一个对象为根,通过OGNL;可以访问与这个对象关联的其他对象).比EL表达式强大很多倍. 可以存取对象的任意属性.调用对象的方法,遍历整个对象的结构 ...
- linux--用户管理--useradd
用户分类 1 root 超级管理员 2 系统用户 就是 某一个服务中 自动产生的用户 不是认为创建的,不能用于登录计算机 只是保证某一个服务的正常运行 比如数据库 3 普通用户 用户必须属于一个且只有 ...
- Redis实战(20)Redis 如何从海量数据中查询出某一个 Key?
序言 资料 https://www.cnblogs.com/vipstone/p/12373734.html
- SICP题解
这里用Common Lisp.Haskell等函数式语言. 1.2.请将下面表达式变换为前缀形式: $$ \frac{5 + 4 + (2 - (3 - (6 + \frac{4}{5})))}{3( ...