poj 3114 Countries in War

题目大意:给定一些城市,然后再给一些寄信的路信,A,B,H代表把信从A城市寄到B城市需要H小时。

如果没有直接可以寄达的,可以先通过另外一个城市到达,比如A,B可以寄信,B,C可以寄信,那么,A,C也可以寄信。

其中两个城市之间如果可以相互寄信的话,那么这两个城市是属于一个国家的,寄信可以通过电子邮件,所以所需的时间为0.

题目中有K个询问,输入A,B询问A到B之间寄信最少需要多少时间。

连接:http://poj.org/problem?id=3114

距离为零肯定就是强连通分量嘛~。

 一开始是打算用的缩点FLOYD,结果超时。但是搜了一下,有人用floyd就不超时,叫秦川看了下,秦川也不晓得,他自己写的spfa然后改了一下之后发现自己写得用floyd也是超时。

最后很无奈搞了K次spfa结果,结果自己傻逼spfa打错了。。。无限sad啊~写了一下午一个括号问题没看到~哎~(2,+oo);

posted @ 2013-08-12 20:07  某某。  阅读(191)  评论(0编辑  收藏  举报