Pagini recente » Cod sursa (job #309196) | Cod sursa (job #1428902) | Cod sursa (job #2905488) | Cod sursa (job #2498403) | Cod sursa (job #536123)
Cod sursa(job #536123)
uses crt;
type kl=array[1..50000,1..50000] of longint;
op=array[1..50000] of longint;
var
x:kl;
j2,d,v,o:op;
f,g:text;
a,b,c,d2,m,n,i,j,c2,min,p:longint;
begin
assign(f,'be.txt');
reset(f);
assign(g,'ki.txt');
rewrite(g);
readln(f,m,n);
for i:=1 to n do
begin
read(f,a,b,c2);
x[a,b]:=c2;
x[b,a]:=c2;
end;
for i:=1 to n do
for j:=1 to n do
if (x[i,j]=0)and(i<>j)then x[i,j]:=30000;
j2[c]:=1;
for i:=1 to m do
begin
if i<>1 then o[i]:=1;
d[i]:=x[1,i];
end;
for i:=1 to m-1 do
begin
min:=30000; p:=0;
for j:=1 to m do
if (d[j]<min)and(j2[j]<>1)
then begin min:=d[j];p:=j;end;
j2[p]:=1;
for j:=1 to m do
if (x[p,j]+d[p]<d[j] ) then begin d[j]:=x[p,j]+d[p];o[j]:=p;end;
end;
for i:=2 to m do
write(g,d[i],' ');
{v[1]:=d2;
a:=1;
while o[v[a]]<>0 do
begin
inc(a);
v[a]:=o[v[a-1]];
end;
v[a]:=o[v[a-1]];
for i:=a downto 1 do
write(g,v[i],'-'); }
close(f);
close(g);
end.