Pagini recente » Cod sursa (job #411952) | Cod sursa (job #281067) | Cod sursa (job #1260087) | Cod sursa (job #2217733) | Cod sursa (job #929050)
Cod sursa(job #929050)
program dijkkk;
const infinit=2000000001;
var v:array[1..3,1..250001]of longint;
a:array[1..50001]of longint;
n,m:longint;
f,g:text;
procedure initializare;
var i:longint;
begin
readln(f,n,m);
for i:=1 to m do read(f,v[1,i],v[2,i],v[3,i]);
end;
procedure dijk;
var i:longint; k:longint;
begin
a[1]:=0; for i:=2 to n do a[i]:=infinit;
k:=1;
while k<>0 do
begin
k:=0;
for i:=1 to m do
if a[v[2,i]]>a[v[1,i]]+v[3,i] then begin a[v[2,i]]:=a[v[1,i]]+v[3,i]; inc(k); end;
end;
end;
procedure afisare;
var i:longint;
begin
for i:=2 to n do if a[i]=infinit then write(g,'0 ')
else write(g,a[i],' ');
end;
begin
assign(f,'dijkstra.in'); reset(f);
assign(g,'dijkstra.out');rewrite(g);
initializare;
dijk;
afisare;
close(f);close(g);
end.