wormholes专题

poj 3259 uva 558 Wormholes(bellman最短路负权回路判断)

poj 3259: 题意:John的农场里n块地,m条路连接两块地,w个虫洞,虫洞是一条单向路,不但会把你传送到目的地,而且时间会倒退Ts。 任务是求你会不会在从某块地出发后又回来,看到了离开之前的自己。 判断树中是否存在负权回路就ok了。 bellman代码: #include<stdio.h>const int MaxN = 501;//农场数const int

poj 3259 Wormholes 最短路

题目大意:虫洞问题,现在有n个点,m条边,代表现在可以走的通路,比如从a到b和从b到a需要花费c时间,现在在地上出现了w个虫洞,虫洞的意义就是你从a到b话费的时间是-c(时间倒流,并且虫洞是单向的),现在问你从某个点开始走,能回到从前 解题思路:其实给出了坐标,这个时候就可以构成一张图,然后将回到从前理解为是否会出现负权环,用bellman-ford就可以解出了

UVA558 - Wormholes(BellmanFord判负环)

UVA558 - Wormholes(BellmanFord判负环) UVA558 - Wormholes 题目大意:  有一个教授希望利用虫洞回到过去(还是从这个虫洞出来就到达了过去),给你虫洞形成的有向图,问教授能否回到过去。 解题思路:  利用BellmanFord判负环,如果不存在负环的话,那么最多经过N - 1次迭代就可以得到最短路,因为形成最短路最多N - 1个节点(起点不算

UVa12227/LA4618 Wormholes

UVa12227/LA4618 Wormholes 题目链接题意分析测试数据AC 代码 题目链接   本题是2009年icpc欧洲区域赛西北欧赛区的j题   UVA - 12227 Wormholes 题意   你有一艘星际飞船,飞船运行速度为1,打算从坐标a旅行到坐标b(出发时刻为0),已知n个虫洞(0≤n≤ 50)的信息:入口点坐标s,出口点坐标e,形成时间t,穿过虫洞

POJ3259 Wormholes 【Bellmanford判断是否存在负回路】

很简单的bellmanford题目,这里比较详细:http://blog.csdn.net/lyy289065406/article/details/6645790 直接代码 #include <cstdio>#include <cstdlib>#include <iostream>#include <algorithm>#include <cstring>#include <cma

POJ - 3259 Wormholes(判断负环, Bellman Ford,SPFA)

虫洞能够时光倒流,判断能否在回到出发的位置的时候在出发的时候之前。(判断是否存在负环) 初学最短路,尝试着用了三种方法判断: 1、Bellman Ford (令d全部为0,仅用来判断负环)       OJ测试得157MS 2、Bellman Ford 结束后再来一轮松弛若松弛成功则存在负环。    235MS 3、Bellman Ford 用队列优化过的SPFA,判断是否存在一个点同队大

Wormholes POJ3259 (spfa)

题目:http://poj.org/problem?id=3259 题目大意:F组数据, 输入n, m, w,表示n块田地, m个田与田之间的关系,w个虫洞,从一块田到达另一块田需要花一定时间, 穿过虫洞时时间会倒流,问是否能够回到出发前的时间 解题思路:判断是否存在负环,若存在则一定能够回去。 #include<cstdio>#include<cstring>#include<algo

POJ 3259 *** Wormholes

题意:农场主有f个农场,每个农场有n个田地,m条路,w个虫洞,走路从田地s到田地e需要花费t1时间,而每个虫洞可以从田地q到田地p,且使得时间倒流t2。求对于每个农场,农场主是否能从田地i出发,回到田地i的时间是在他出发的时间之前? 想法:其实就是判断田地之间是否存在负循环,用bellmanford算法就可以了,但是还是WA了两次。因为我忽略了这m条路事实上是可以往返的。

I - Wormholes

题目: While exploring his many farms, Farmer John has discovered a number of amazing wormholes. A wormhole is very peculiar because it is a one-way path that delivers you to its destination at a time t

poj 3259 Wormholes SPFA // Bellman-ford

//最水的模版题,记下来以后忘了可以看看。 //SPFA #include<iostream> #include<cstdio> #include<cstring> #include<queue> using namespace std; const int INF=0x3f3f3f3f; const int maxn=505; int n, m, w, d[maxn], inqueue[ma

【POJ No. 3259】虫洞 Wormholes

【POJ No. 3259】虫洞 Wormholes POJ题目地址 【题意】 在探索许多农场时,约翰发现了一些令人惊奇的虫洞。虫洞是非常奇特的,因为它是一条单向路径,可以将人穿越到虫洞之前的某个时间!约翰想从某个地点开始,穿过一些路径和虫洞,并在他出发前的一段时间返回起点,也许他将能够见到自己。 【输入输出】 输入: 第1行是单个整数F (1≤F ≤5),表示农场的数量。 每个

UVa558-Wormholes

题意:宇宙中有n个星系,m个虫洞,通过虫洞能到达另一个星系(单向),时间会回到过去或未来。问能不能通过虫洞回到宇宙大爆炸的时候。         思路:判断图中有没有负环,如果有,不断地绕,能回到任意时间以前。直接Bellman Ford判断负环,松弛了n-1次以后如果还能松弛,则认为有负环。 #include <iostream>#include <stdio.h

[BZOJ1715][Usaco2006 Dec]Wormholes 虫洞

[Usaco2006 Dec]Wormholes 虫洞 时间限制: 1 Sec 内存限制: 128 MB 题目描述 John在他的农场中闲逛时发现了许多虫洞。虫洞可以看作一条十分奇特的有向边,并可以使你返回到过去的一个时刻(相对你进入虫洞之前)。John的每个农场有M条小路(无向边)连接着N (从1..N标号)块地,并有W个虫洞。其中1<=N<=500,1<=M<=2500,1<=W<=20

【POJ】3259 Wormholes bellman-ford | SPFA

诶,真的是越活越回去了,现在打的程序还不如以前了,慢的爆炸……(先测的是bellman-ford,后测的是SPFA) 题目大意:FJ想要进行时光旅行,现在有F个农场,对于每个农场,已知该农场有N片农田,M条小路,W个虫洞。其中小路是双向的,虫洞是单向的。对于每条小路,有S,E,T三个参数:S和E表示小咯两端农田的序号,通过这条小咯需要的T的时间。对于每个虫洞,同样有S,E,T三个参数:S表