Cod sursa(job #702701)

Utilizator mada0222Tomus Madalina mada0222 Data 2 martie 2012 08:24:24
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.82 kb
program ssss;
var f,g:text;
    n,i,k,j:integer;
    a:array[1..105,1..105] of integer;
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
           begin
             if a[i,k]+a[k,j]<a[i,j] then
               a[i,j]:=a[i,k]+a[k,j];
           end;
      for i:=1 to n do
      begin
        for j:=1 to n do
           begin
             if a[i,j]=maxint then
                a[i,j]:=0;
             write(g,a[i,j],' ');
           end;
        writeln(g);
      end;
close(f);
close(g);
end.