图论-最短路
Nemaleswang
ACM退役狗一只
展开
-
hdoj 1874 畅通工程续
题目链接:畅通工程续题意一读就知道是最短路,给你n个城镇,m条路,然后给你s,t,问你最短路是多少,数据量很小,直接floayd做就可以了,写一个邻接表代表距离#include using namespace std;int n,m,dp[1005][1005],x,y,z,s,t;int main(){ while(cin>>n>>m){ for(int原创 2017-04-13 09:32:42 · 287 阅读 · 0 评论 -
floyd算法模板
floyd算法与dijkstra算法的区别就是在floyd算法中可以有线负权边typedef struct { char vertex[VertexNum]; //顶点表 int edges[VertexNum][VertexNum];原创 2016-08-09 07:35:49 · 446 阅读 · 0 评论 -
SPFA模板
SPFA实际上就是一个利用队列慢优化的一个算最短路的算法#include using namespace std;const int maxn = 205;int n,m;int d[maxn],inq[maxn];vector >E[maxn];void init(){ for(int i = 0;i < maxn;i++) E[i].clear(); for(原创 2017-04-13 22:25:25 · 368 阅读 · 0 评论 -
tyvj 1031 热浪
题目链接:热浪题意就是给你一堆路径,然后让你找某两个点之间的最短路,然后一道裸的最短路,写了个SPFA#include using namespace std;const int maxn = 3005;int n,m,s,t;int d[maxn],inq[maxn];vector >E[maxn];void init(){ for(int i = 0;i < ma原创 2017-04-13 22:20:29 · 502 阅读 · 0 评论 -
poj 2387 Til the Cows Come Home
题目链接:Til the Cows Come Home题目大意:给你m条边,n个原创 2017-05-04 20:49:33 · 322 阅读 · 0 评论 -
2017 计蒜之道 复赛 百度地图导航(拆点最短路)
题目链接:百度地图导航题目大意:有n个点,m层城市群,每个城市群有一些城市,然后是一些道路,有的是城市之间的最短路,有的是城市群之间的最短路(城市群间的最短路代表两个城市群之间的城市之间都可以两两通过城市群之间的最短路到达),然后给出城市群的城市有哪些,给出城市之间的最短路和城市群之间的最短路题目思路:n和m都是2e4,直接暴力做最短路当然不行,这个时候我们可以考虑对每个城市群进行拆点,然后做一遍最原创 2017-08-08 10:16:28 · 407 阅读 · 0 评论 -
hdoj 4725 The Shortest Path in Nya Graph
题目链接:The Shortest Path in Nya Graph题目大意:有n个点,m条边,n层,每一层可以有多个点,接下来给每个点所在的层数,相邻层之间的点到另一层的花费为C,然后给出m条额外的边,问从1到n这个点的最短路题目思路:明显的拆点的最短路,我们把每一层拆点成一个点n+i,i为层数,然后这个点和这一层里面的每个点路径为0,然后跟相邻层的点的距离为c,然后做最短路就好了,在做拆点最短原创 2017-08-07 17:32:40 · 305 阅读 · 0 评论 -
hdoj 5521 Meeting
题目链接:Meeting题目大意:给你一个有n个点的图,然后m个关系,每个关系有一些点和一个时间,这些同一个关系里面的点之间互相到达的时间为时间t,现在有两个人同时从1和n点出发没问他们同时到达某个点的最短时间为多少,有多个点全部输出,不能相遇就输出Evil John题目思路:我们考虑从1和n两个点跑最短路,他们到达某个点的时间就是他们之间的最大时间,然后考虑建边的时候,我们对每一层拆一个点,这个拆原创 2017-10-18 19:54:25 · 256 阅读 · 0 评论