Cod sursa(job #1616584)

Utilizator deepsterescuCraciunescu Denis Bogdan deepsterescu Data 27 februarie 2016 11:33:44
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.78 kb
program roy;
var     k,n,i,j:byte;
        a:array[1..100,1..100] of integer;
        output,input:text;

procedure citire;
begin
        readln(input,n);
        for i:=1 to n do
                for j:=1 to n do     begin
                        read(input,a[i,j]);
                        if (a[i,j]=0) and (i<>j) then a[i,j]:=maxint;
                        end;
end;

begin
assign(input,'royfloyd.in'); reset(input);
assign(output,'royfloyd.out'); rewrite(output);
citire;
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
            a[i,j]:=a[i,k] + a[k,j];
for i:=1 to n do begin
        for j:=1 to n do
                write(output,a[i,j],' ');
        writeln(output);
        end;
close(input); close(output);
end.