题目链接: http://poj.org/problem?id=2679
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1583
我要刷水题呢,可这是水题么?可能是吧,可于我而言这水分也太涩了一些~忙了一整天再加一个昨晚,可是可是,思路呢,哪里来的,哪里呢``````
好吧,引自别人的思路,好不容易啊,不容易~做一些不是很清晰的题感觉那么水深火热,悲剧不都是从不能1YES开始的,也有从庞大复杂的东西绕得懒惰的你投入不了开始的~好吧,外面下雨了...
题意: 给你一个有向有权有环图,两个权值weight和distance,只能从当前点走离开该点的weight值最低的路,问从s到t的weight值最少为多少, 并得出在这种情况下distance的最小值.
限于表达能力及不懒惰程度,就不说那么多了吧,最短路问题,要加入环的判断,又专门看了下BellmanFord的判断环的过程.自已实现的代 码如下:
另,此代码引申出了另外一个问题 ,就是DFS和BFS,在判断是否存在路径上的时间效率问题,据这一题来讲,用BFS TLE了,而用DFS 860MS,DFS效率上高了不少,由此引发了和一个队友关于BFS和DFS效率上的争论,呃~具体测试一般情况下BFS和DFS效率上的问题,下次再测试吧~
8437003 dooder_daodao 2679 Accepted 380K 860MS C++ 3061B 2011-04-05 19:44:27
时间效率上太不可观了,一起做这题的小媛30MS就AC了,我的那个悲啊~附修改过的代码如下:
2476676 2011-04-05 21:40:24 Accepted 2583 C++ 60 404 zzuli_ㄉㄉ
这么大的时间差距,总感觉不怎么舒服~嗯,虽然通过了,可一直有个阴隐挥之不去,后来就想到,其实深搜只要一次就可以了,记录下所有终点能到达的结点,记录下逆向边,然后从终点深搜记录能达到的点~终于完成了,40MS~~~