Cod sursa(job #2296556)

Utilizator DanutAldeaDanut Aldea DanutAldea Data 4 decembrie 2018 19:48:59
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>
using namespace std;

ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");

int n,i,j,k,v[101][101];

int main(){
    fin>>n;
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++){
            fin>>v[i][j];
            if(v[i][j]==0)
                v[i][j]=10001;
        }

    for(k=1;k<=n;k++)
        for(i=1;i<=n;i++)
            for(j=1;j<=n;j++)
                if(i!=j)
                    v[i][j]=min(v[i][j],v[i][k]+v[k][j]);

    for(i=1;i<=n;i++){
        for(j=1;j<=n;j++)
            if(v[i][j]!=10001)
                fout<<v[i][j]<<" ";
            else
                fout<<"0 ";
        fout<<"\n";
    }

    return 0;
}