Pagini recente » Cod sursa (job #327763) | Cod sursa (job #1971762) | Cod sursa (job #928519) | Cod sursa (job #2155739) | Cod sursa (job #327960)
Cod sursa(job #327960)
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 then Write(b,0,' ') else Write(b,z[i,j],' ');
Writeln(b);
end;
close(b);
end.