Pagini recente » Cod sursa (job #1754798) | Profil FlorinHaja | Cod sursa (job #3223845) | Cod sursa (job #1992052) | Cod sursa (job #898549)
Cod sursa(job #898549)
program sdgfxdgfd;
var f,g:text;
n,i,j,k:integer;
a:array[1..101,1..101] of integer;
procedure drum(i,j:integer);
var k:integer;
ok:boolean;
begin
k:=1;
ok:=false;
while (k<=n) and (ok=false) do
begin
if (i<>k) and (j<>k) then
if a[i,j]=a[i,k]+a[k,j] then
begin
drum(i,k);
drum(k,j);
ok:=true;
end;
k:=k+1;
end;
if not ok then writeln(g,j);
end;
begin
assign(f,'royfloyd.in'); reset(f);
assign(g,'royfloyd.out'); rewrite(g);
readln(f,n);
for i:=1 to n do
begin
for j:=1 to n do
begin
read(f,a[i,j]);
if (i<>j) and (a[i,j]=0) then
a[i,j]:=maxint;
end;
readln(f);
end;
for k:=1 to n do
for i:=1 to n do
for j:=1 to n do
if a[i,j]>a[i,k]+a[k,j] then
begin
a[i,j]:=a[i,k]+a[k,j];
end;
for i:=1 to n do
begin
for j:=1 to n do
write(g,a[i,j],' ');
writeln(g);
end;
{ drum(1,3);}
close(f);
close(g);
end.