最短路
沙茶
这个作者很懒,什么都没留下…
展开
-
[poj3259] Wormholes
题目链接题解:spfa判负环,有时间写一下dfs版spfa判环#include <iostream>#include <cstring>#include <cstdio>#include <queue>using namespace std;#define INF 0x3f3f3f3fconst int M=10005;int m,n,x,y,z,t,T,w,flag;int vis原创 2016-08-17 00:06:13 · 250 阅读 · 0 评论 -
[Usaco08Jan&luogu1948] Telephone Lines
题目链接题解:二分答案#include <iostream>#include <cstring>#include <cstdio>#include <queue>using namespace std;#define INF 0x3f3f3f3fconst int M=10005;int m,n,x,y,z,t,w,r,l,mid,ans,c;int head[M],d[M],p[M原创 2016-09-25 17:36:41 · 215 阅读 · 0 评论 -
[luogu1462]通往奥格瑞玛的道路
题目链接题解:二分一下#include <iostream>#include <cstring>#include <cstdio>#include <queue>using namespace std;#define INF 0x3f3f3f3fconst int M=10005;int m,n,x,y,z,t,w,r,l,mid,ans;int head[M],d[M],p[M];原创 2016-09-25 17:39:27 · 252 阅读 · 0 评论 -
[codevs1020] 孪生蜘蛛
题目链接题解:……#include<cstdio>#include<iostream>#include<cstring>using namespace std;#define INF 0x3f3f3f3fint n,sum=INF;int x,y,z;int x1,y1;int w[105][105];void init(){ memset(w,0x3f,sizeof(w原创 2016-11-05 10:45:01 · 242 阅读 · 0 评论 -
[codevs1506] 传话
题目链接#include <iostream>#include <cstdio>#include <cstring>using namespace std;int n,m,x,y;int a[1005][1005];void floyed(){ for(int k=1;k<=n;k++) for(int i=1;i<=n;i++) for(int j=1;j<=原创 2016-06-28 11:09:06 · 312 阅读 · 0 评论 -
[Usaco08Jan] Cow Contest
题目链接题解:如果一头牛和其他n-1头有关系(联通),该牛排名确定#include <iostream>#include <cstdio>#include <cstring>using namespace std;int n,m,x,y,tot;int w[1005][1005];void floyed(){ for(int k=1;k<=n;k++) for(int原创 2016-11-05 19:58:33 · 271 阅读 · 0 评论 -
[hdu3873] Invade the Mars
题目链接题解:前驱点都走过才能入队#include <queue>#include <cstdio>#include <cstring>#include <iostream>using namespace std;#define INF 0x3f3f3f3f#define MP(x,y) make_pair(x,y)typedef pair<int,int> pii;priority原创 2016-11-05 20:05:03 · 283 阅读 · 0 评论 -
[Usaco09Nov] 找工作
题目链接题解:蜜汁建边#include <queue>#include <cstdio>#include <cstring>#include <iostream>using namespace std;queue <int> q;const int M=505;#define INF 0x3f3f3f3fint D,F,sp,mx;int m,n,x,y,z,t;bool vis[原创 2016-10-16 10:52:48 · 179 阅读 · 0 评论 -
[luogu3393 逃离僵尸岛]
题目链接题解:实力搜索……#include <iostream>#include <cstdio>#include <cstring>#include <queue>#include <climits>using namespace std;#define INF LLONG_MAX>>1const int M=100005;int n,m,t,k,s,P,Q;long long原创 2016-10-16 10:59:35 · 538 阅读 · 0 评论 -
[hdu3790]最短路径问题
题目链接题解:加一个cost数组就好#include <queue>#include <cstdio>#include <cstring>#include <iostream>#include <climits>using namespace std;#define INF 0x3f3f3f3fqueue <int> q;int m,n,t,sp,ep,ans;const int原创 2016-09-25 17:14:21 · 236 阅读 · 0 评论 -
[luogu2832] 行路难
题目链接题解:一个pre数组记录路径,一个pos数组记录额外的时间#include <queue>#include <cstdio>#include <cstring>#include <iostream>using namespace std;queue <int> q;const int M=10005;#define INF 0x3f3f3f3fint m,n,x,y,z,t,k原创 2016-08-25 23:38:21 · 288 阅读 · 0 评论 -
[poj1847] Tram
题目链接题解:火车从一点开到另一点,轨道上有很多岔路口,每个路口都有好几个方向(火车能够选任意一个方向开),但是 默认的是 第一个指向的方向,所以如果要选择别的方向的话得 进行一次切换操作 ,给定一个起点一个终点 ,问最少进行几次 切换操作 能够 使 火车 完成这个历程 , 如果开不到,输出“-1”。#include <iostream>#include <cstring>#include <c原创 2016-08-25 22:52:18 · 262 阅读 · 0 评论 -
[poj1797] Heavy Transportation
题解:两种方法:可以用最大生成树或改变松弛条件的spfa最大生成树#include <cstdio>#include <iostream>#include <algorithm>#define M 1005using namespace std;int Case,n,m,T;int v[M*M],u[M*M];int f[M],r[M*M],val[M*M];inline int fi原创 2016-08-17 00:01:41 · 331 阅读 · 0 评论 -
[poj1511] Invitation Cards
题目链接题解:题意也就是求原点到其他点的最短距离和其他点到原点的最短距离和(表示完全看不懂英文题)正,反向各建一遍图,2遍spfa即可#include <queue>#include <cstdio>#include <climits>#include <cstring>#include <iostream>using namespace std;#define M 10000005原创 2016-08-16 23:11:32 · 259 阅读 · 0 评论 -
[bzoj2015&&Usaco2010 Feb] Chocolate Giving
题目链接以下是中文题目DescriptionFarmer John有B头奶牛(1<=B<=25000),有N(2*B<=N<=50000)个农场,编号1-N,有M(N-1<=M<=100000)条双向边,第i条边连接农场R_i和S_i(1<=R_i<=N;1<=S_i<=N),该边的长度是L_i(1<=L_i<=2000)。居住在农场P_i的奶牛A(1<=P_i<=N),它想送一份新年礼物给居住在农原创 2016-07-05 11:18:21 · 972 阅读 · 0 评论 -
[noip2012pj] 文化之旅
题目链接其实应该用搜索,但是数据太水,最短路水过#include <iostream>#include <cstring>#include <cstdio>using namespace std;#define INF 0x3f3f3f3fconst int maxn=150;int n,k,m,s,t;int culture[maxn];int dd[maxn][maxn];in原创 2016-07-01 11:04:33 · 968 阅读 · 0 评论 -
[codevs1079] 回家
题目链接#include <iostream>#include <cstdio>#include <cstring>#define INF 0x3f3f3f3fusing namespace std;const int n=52;int w[55][55];int home[55];int m,z,x,y,ans=INF;char a,b,begin;int pd(char x)原创 2016-06-21 08:59:01 · 291 阅读 · 0 评论 -
[codevs2577] 医院设置
asd原创 2016-06-21 08:26:12 · 484 阅读 · 0 评论 -
[hdu2066] 一个人的旅行
题目链接#include<cstdio>#include<cstring>#include<iostream>using namespace std;#define INF 0x3f3f3f3f;int m,s,e,x,y,z,n,minl,ans;int go[1200],home[1200],vis[1200],d[1200];int w[1200][1200];void Dij原创 2016-06-20 10:30:04 · 264 阅读 · 0 评论 -
[poj2387] Til the Cows Come Home
题目链接#include <iostream>#include <cstdio>#include <cstring>using namespace std;#define INF 1000000000int m,n,x,y,z;int w[2005][2005];int d[2005],vis[2005];void dijkstra(){ for(int i=1;i<=n;原创 2016-06-20 08:51:56 · 191 阅读 · 0 评论 -
[hdu1596] find the safest road
题目链接#include <iostream>#include <cstring>#include <cstdio>using namespace std;int n,t,s,e;double w[1005][1005];void floyed(){ for(int k=1;k<=n;k++) for(int i=1;i<=n;i++) for(int j=1;原创 2016-06-18 10:36:23 · 265 阅读 · 0 评论 -
[poj1125] Stockbroker Grapevine
题目链接题解:题目数据的输入第一行为n,代表总人数,当n=0时结束程序,接着n行,第i+1行的第一个是一个整数t,表示第i个人与t个人的关系要好,接着有t对整数,每对的第一个数是j,表示i与j要好,第二个数是从i直接传递谣言到j所用的时间,数据的输出是两个整数,第一个为选点的散布谣言的起点,第二个整数时所有人得知谣言的最短时间 例如,对于数据1, 可知如果从3开始传播,则1,2得知谣言的时间都是原创 2016-08-25 22:49:20 · 266 阅读 · 0 评论 -
[codevs1021] 玛丽卡
题目链接题解:显然,堵车的道路不在原图的最短路上。因此,在最短路上枚举即可#include <queue>#include <cstdio>#include <cstring>#include <iostream>using namespace std;queue <int> q;const int M=1001;#define INF 0x3f3f3f3fint m,n,x,y,z,原创 2016-09-28 19:20:45 · 224 阅读 · 0 评论