wwwlujunhong 2013-11-03 02:35:07
点我顶贴
收藏
删除
为何无输出
程序如下:
var f:array[1..10000,1..10000]of qword;
n,m,t,a,b,s,min,pos:qword;
i,j:longint;
g:array[1..10000]of boolean;
procedure init;
begin
readln(n,m,t);
fillchar(f,sizeof(f),$7f);
fillchar(g,sizeof(g),true);
for i:=1 to m do
begin
readln(a,b,s);
f[a,b]:=s;f[b,a]:=s;
end;
end;
procedure dj;
begin
g[1]:=false;
for i:=1 to n-1 do
begin
min:=7000000000;
for j:=1 to n do
if (f[1,j]<min)and(g[j]=true) then
begin
pos:=j;min:=f[1,j];
end;
g[pos]:=false;
for j:=1 to n do
if f[1,pos]+f[pos,j]<f[1,j] then f[1,j]:=f[1,pos]+f[pos,j];
end;
min:=0;
for i:=2 to n do
min:=min+2*f[1,i];
writeln(min);
if min>t then write('escape')
else write('run')
end;
begin
init;
dj;
end.