Cod sursa(job #1052235)

Utilizator Mihai_ChihaiMihai Chihai Mihai_Chihai Data 10 decembrie 2013 22:38:29
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator fpc Status done
Runda Arhiva educationala Marime 0.61 kb
program royfloyd;
var a:array[1..100,1..100] of longint;
    n,i,j,k:longint;
begin

   assign(input,'royfloyd.in');
   reset(input);
   readln(n);
   for i:=1 to n do begin
     for j:=1 to n do read(a[i,j]);
     readln;
     end;
   for k:=1 to n do
     for i:=1 to n do  if a[i,k]<>0 then
       for j:=1 to n do   if a[k,j]<>0 then
         if a[i,j]>a[i,k]+a[k,j] then a[i,j]:=a[i,k]+a[k,j];
   for i:=1 to n do a[i,i]:=0;
   assign(output,'royfloyd.out');
   rewrite(output);
   for i:=1 to n do begin
     for j:=1 to n do write(a[i,j],' ');
     writeln;
     end;
   close(output);
end.