Pagini recente » Cod sursa (job #1518240) | Cod sursa (job #135012) | Cod sursa (job #2572454) | Cod sursa (job #2584431) | Cod sursa (job #327961)
Cod sursa(job #327961)
program floyd;
var a,b:text;
i,j,k,x:integer;
z:array[1..100,1..100] of integer;
function min(i,j:longint):longint;
begin
if i>j then min:=j else min:=i;
end;
begin
assign(a,'royfloyd.in');
assign(b,'royfloyd.out');
reset(a);
Readln(a,k);
rewrite(b);
for i:=1 to k do
begin
for j:=1 to k do
begin
Read(a,z[i,j]);
if z[i,j]=0 then z[i,j]:=maxint;
end;
Readln(a);
end;
for x:=1 to k do
for i:=1 to k do
for j:=1 to k do
z[i,j]:=min(z[i,j],z[i,x]+z[x,j]);
for i:=1 to k do
begin
for j:=1 to k do
if (z[i,j]=maxint) or (i=j) then Write(b,0,' ') else Write(b,z[i,j],' ');
Writeln(b);
end;
close(b);
end.