
最短路径算法
淡蓝色的狼
这个作者很懒,什么都没留下…
展开
-
最短路径 前向星模板
Dijkstra优先队列优化:#include<iostream>#include<algorithm>#include<cstring>#include<cstdio>#include<queue>using namespace std;const int INF = 0x3f3f3f3f;const int maxn = ;int head[maxn], dis[maxn],原创 2017-08-06 20:34:00 · 391 阅读 · 0 评论 -
模板2 最短路计数
给出一个 NN 个顶点 MM 条边的无向无权图,顶点编号为 1-N1−N 。问从顶点 11 开始,到其他每个点的最短路有几条。典型的最短路,加上一个数组代表到达这个点有几个路径#include<iostream>#include<algorithm>#include<cstring>#include<cstdio>#include&l...原创 2018-07-26 10:55:32 · 150 阅读 · 0 评论 -
ZOJ - 3781 缩点+最短路径
题目大意:字符一样并且相邻的即为连通。每次可翻转一个连通块X(O)的颜色,问至少改变几次使得图上所有字符都相等题目思路:每次操作都将本身所在的连通块与和自己相邻的不同颜色的连通块变成同一种颜色,也就是变成一个连通块了,那么要使n次操作后全部变成一样的颜色,也就是从某点出发到达其余所有点。所以,dfs把连通块缩成点,然后相邻的连通块之间建边,枚举以每个点为根的情况,求最短路。#inclu...原创 2018-04-24 15:53:33 · 248 阅读 · 0 评论 -
最短路 + 构造
题意:有n个城市,编号为1~n,每个城市都相互连通,其中有m对城市通过公路连通,其他的市通过铁路连通,经过公路的时间为a,经过铁路的时间为b,问从1到达n的时间最短为多少?题解: 第一种情况 1-n由公路相连,则最短距离为min(a,仅有铁路构成的路) 第二种情况 1-n由铁路相连,则最短距离为min(a,仅有公路构成的路)在一种情况中,应该bfs搜索没有用公路相连的点,且,一旦di...原创 2018-04-13 18:47:21 · 390 阅读 · 0 评论 -
ZOJ - 3946 最短路+贪心
题意:一张带权无向图,权有两个参数(d,c),分别表示走过这条边的时间和建造这条边的代价。 要求选出一些边,使得0节点到其他点的距离之和最短,并在最短的基础上求最小代价。/**/#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include&...原创 2018-04-15 20:56:49 · 318 阅读 · 0 评论 -
HDU - 6166 多源点到多原点的最短路djstl+二进制
Senior Pan fails in his discrete math exam again. So he asks Master ZKC to give him graph theory problems everyday. The task is simple : ZKC will give Pan a directed graph every time, and selects so...原创 2018-04-09 09:36:37 · 447 阅读 · 0 评论 -
Six Degrees of Cowvin Bacon POJ - 2139 弗洛伊德算法
题意是: 若看过同一场电影的人,则他们的亲密度为1,若两个人(a,b)没有看过同一场电影,且他们和第三个人(c)看过同一场电影,则他们的亲密度=a,c之间的亲密度加上b,c之间的亲密度。 求某个人到除他之外的所有人亲密度之和*100/(n-1)思路:由于点数小于150,所以用弗洛伊德算法(n3复杂度)求某人到除他所有人的亲密度即可。#include<iostream>#include<cstd原创 2017-12-05 10:21:02 · 243 阅读 · 0 评论 -
A - Telephone Lines POJ - 3662 第k+1条边尽量小
题意是:装电话线,从1到n,而且报销k根电线,且只花费报销完的那些电线的最贵的那根,问需要花费多少钱》?思路:二分枚举第k+1条边的长度,最短路径时当现在的这条边的长度>k+1边的长度时,置一,否则置0.具体看代码:#include<iostream>#include<algorithm>#include<cstring>#include<cstdio>#include<queue>usi原创 2017-12-05 10:14:22 · 187 阅读 · 0 评论 -
F - Silver Cow Party POJ - 3268
http://poj.org/problem?id=3268 One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to attend the big cow party to be held at farm #X (1 ≤ X ≤ N). A total of M (1 ≤ M ≤ 100,原创 2017-09-07 17:49:27 · 256 阅读 · 0 评论 -
吝啬的国度
就是暴力搜索即可 dfs+链式前向星题目链接<-点击#include<cmath>#include<iostream>#include<cstdio>#include<cstring>using namespace std;int pre[100005],head[100005];int cnt=0;struct edge{ int v,next;}edge[100005原创 2017-08-23 20:58:14 · 217 阅读 · 0 评论 -
一个人的旅行 HDU - 2066
最短路模板题 仅仅将草儿的位置定为0,即可以下为我用链式前向星写的最短路#include<iostream>#include<cstdio>#include<cstring>#include<queue>#include<algorithm>using namespace std;const int maxn=500005;const int inf=0x3f3f3f3f;int原创 2017-08-23 20:10:11 · 258 阅读 · 0 评论 -
线段树建图+spfa
题意: 就是给了n个点,给了m个加边的关系,有向边,但是加边不一定是u->v,可能是u->[l, r]就是u到[l, r]区间里面的每一个点都加一条边,或者是[l, r] -> u,就是[l, r]区间到u加一条边。然后求单源最短路。 #include<bits/stdc++.h>using namespace std;const int maxn=200...原创 2018-07-31 12:17:17 · 208 阅读 · 0 评论