题意:有n个空地,有m条双向大路,w条时光隧道单向路.问能否回到过去? 思路:判断是否有负环存在,如果有负环存在那么就可以一直小就可以回到过去了 创建源顶点 V到其他顶点的距离d 初始为INF d[1]=0; 计算最路径,执行v-1次遍历  对于每条边 if(d[v]>d[s]+t)  d[v]=d[s]+t; 判断是否有负环   遍历所有的边 计算u至v的距离,如果对于v存在更小的距离 则存在 有松弛 d[v]>d[u]+t 解决问题的代码: #include <iostream>…
[原创] 题目大意 John有N个农场,一共有M条边,在农场上出现了W个虫洞(W是一条边),其中M是双向普通边,W是单向虫洞边.John穿行于农场之间每经过一条边(S到E)的时间为+T,每经过虫洞会时间倒流,经过-T.问John会不会在某一刻看到以前的自己.这个题目即问的是,存不存在负权环.bollman_ford 先粘一下百度百科的话: Bellman - ford算法是求含负权图的单源最短路径算法,效率很低,但代码很容易写.其原理为持续地进行松弛(原文是这么写的,为什么要叫松弛,争议很大),…
题目链接:http://poj.org/problem?id=3259 Wormholes Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 45077   Accepted: 16625 Description While exploring his many farms, Farmer John has discovered a number of amazing wormholes. A wormhole is ver…
额.关键是读题.反正我是看了解题报告才知道意思的.给你n个点.m条路.双向的.耗费时间.w个虫洞.单向的.时间为负值.问你是否可以从某一点返回看到之前的自己.即为判断是不是有负环.用Bellman_Ford算法. 分分钟打完.排了好久的bug.还是循环那里j和i傻傻的分不清楚. 附代码:#include<stdio.h>#include<string.h>#include<iostream>#include<algorithm>#define maxn 0x…
题目传送门 /* 题意:一张有双方向连通和单方向连通的图,单方向的是负权值,问是否能回到过去(权值和为负) Bellman_Ford:循环n-1次松弛操作,再判断是否存在负权回路(因为如果有会一直减下去) 注意:双方向连通要把边起点终点互换后的边加上 */ #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #include <cstring> #…
http://poj.org/problem?id=3259 农夫john发现了一些虫洞,虫洞是一种在你到达虫洞之前把你送回目的地的一种方式,FJ的每个农场,由n块土地(编号为1-n),M 条路,和W个 虫洞组成,FJ想从一块土地开始,经过若干条路和虫洞,返回到他最初开始走的地方并且时间要在他离开之前,或者恰好等于他离开的时间. 把虫洞的时间看成负边权,就是判断从起点出发是否存在负权回路.那么就可以采用bellman-ford算法,注意数组开大点. /* ********************…
题意:John的农场里field块地,path条路连接两块地,hole个虫洞,虫洞是一条单向路,不但会把你传送到目的地,而且时间会倒退Ts.我们的任务是知道会不会在从某块地出发后又回来,看到了离开之前的自己. 思路: 这题就是判断存不存在负环回路. 前M条是双向边,后面的W是单向的负边. 为了防止出现不连通,增加一个结点作为起点.起点到所有点的长度为0 #include <iostream> #include <stdio.h> #include <string.h>…
Wormholes Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 24249   Accepted: 8652 Description 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 pa…
 POJ 3259 Wormholes Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu   Description 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…
田里的虫洞 题目大意:就是这个农夫的田里有一些虫洞,田有很多个点,点与点之间会存在路,走过路需要时间,并且这些点存在虫洞,可以使农夫的时间退回到时间之前,问你农夫是否真的能回到时间之前? 读完题:这一题就是很明显了,就是要你找负值圈嘛!立马上Bellman_Ford算法 #include <iostream> #include <functional> #include <algorithm> #include <queue> #define MAX_N 5…