129 条题解
-
0zm110 LV 9 @ 2009-08-30 21:54:28
数据很恶心。。
负权环不一定和S相连。
-
02009-08-28 14:25:19@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案错误...程序输出比正确答案长
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:85 有效耗时:0ms 什么病? -
02009-08-19 11:10:47@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:运行超时...
├ 测试数据 03:运行超时...
├ 测试数据 04:运行超时...
├ 测试数据 05:运行超时...
├ 测试数据 06:运行超时...
├ 测试数据 07:运行超时...
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:0 有效耗时:0msvar
a:array[0..1000,0..1000] of longint;
d:array[0..1000] of longint;
n,m,s,t,i,j,k:longint;
x,y,z:longint;
change:boolean;
begin
readln(n,m,s);
for i:=0 to n do
for j:=0 to n do
if ij
then a:=maxint
else a:=0;for i:=1 to m do
begin
readln(x,y,z);
a[x,y]:=z;
end;for i:=1 to n do
d[i]:=a;
d:=0;for k:=1 to n-1 do
for j:=0 to n do
for i:=0 to n do
if (amaxint)and(d[i]maxint)and(d[j]>d[i]+a) then
begin
d[j]:=d[i]+a;
end;
change:=true;
for i:=0 to n do
for j:=0 to n do
if d[j]>d[i]+a
then change:=false;if change
then begin
for i:=1 to n do
begin
if d[i]=maxint
then writeln('NoPath')
else writeln(d[i]);
end;
end
else writeln(-1);
end.请问各位高手
这是why!!!!!!! -
02009-08-11 20:54:19@
SPFA判负环怎么做到0ms???
我交的快崩溃了! -
02009-08-11 19:50:09@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms
SPFA -
02009-08-08 09:02:03@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 9ms
├ 测试数据 07:答案正确... 40ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:49ms
七七四十九,不吉利啊45次的提交给后人提醒,最后1个点有正环,所以DFS的时候一定要判断dist是否小于0
-
02009-08-07 15:58:09@
超弱智的bellman-ford,为啥通过率贼低呢?
-
02009-07-29 11:58:58@
本人真粗心,交了快30次了,终于ac,0ms!
-
02009-07-27 17:33:51@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms
一次AC!
虽然代码很长,但是只要细心地去做,一样很容易AC! -
02009-07-25 09:39:22@
话说dfs找负权回路咋弄。。我最后随机化5次spfa找的 - -!!
顶点不连通的图中有环..好可恶。。WA了N次。。
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 197ms
├ 测试数据 07:答案正确... 25ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:222ms -
02009-07-22 10:35:00@
哎。没秒杀
-
02009-07-22 10:25:19@
太...艰难了
SPFA要加一个小小的优化
数组推荐把点当做2000来开
判断环,如果一个点入队次数>=n,则直接输出-1
循环变量全部Longint 其他全部Int64
注意:
1.有可能两点之间有多边,取最短的
2.S点不一定就在负圈上 -
02009-07-20 15:41:47@
注意有点到自己的负权边.饿新四卧乐.
-
02009-07-19 20:02:12@
竟然没发现这是有向图!我晕!
-
02009-06-12 15:24:11@
一道极其WS阴险的题目,经过长时间的努力,终于AC了。
bellmanford也可以零MS。 -
02009-05-25 16:28:43@
怎么用SPFA直接判断有无负权环?不是某节点入队的次数>=n么?
-
02009-05-22 23:53:50@
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案正确... 0ms
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案正确... 0ms
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Accepted 有效得分:100 有效耗时:0ms
注意有重编,判断用DFS,最短路径用SPFA,秒杀掉!
交了好几次,数据有点苛刻! -
02012-10-26 21:38:09@
判断负环要大于N
-
02009-05-15 21:44:56@
第345个过...
一定要用SPFA,挺快的,0ms -
02009-04-29 15:40:43@
交了十几遍,终于AC了......
做法是在读入的时候把每个节点的边都记录下来,判断负权环的时候用
然后DFS找是否有负权环,有的话输出-1就HALT
没有的话就SPFA
总之,太艰难了.....