Cod sursa(job #174038)

Utilizator cheery_g1rlHaller Emanuela cheery_g1rl Data 8 aprilie 2008 13:42:00
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.64 kb
program roy_floyd;
var f,g:text;
    i,j,k,n:longint;
    m:array[1..100,1..100] of longint;
begin
assign(f,'royfloyd.in'); reset(f);
readln(f,n);
for i:=1 to n do
  begin
   for j:=1 to n do
     begin
       read(f,m[i,j]);
       if (i<>j)and(m[i,j]=0) then m[i,j]:=100000;
     end;
    readln(f);
  end;
close(f);
for k:=1 to n do
  for i:=1 to n do
    for j:=1 to n do
       if m[i,j]>m[i,k]+m[k,j] then m[i,j]:=m[i,k]+m[k,j];
assign(g,'royfloyd.out'); rewrite(g);
for i:=1 to n do
  begin
  for j:=1 to n do
    if m[i,j]=100000 then write(g,'0 ')
      else write(g,m[i,j],' ');
   writeln(g);
   end;
close(g);
end.