Cod sursa(job #2726182)

Utilizator mihaiailincaiMihai-Teodor Ailincai mihaiailincai Data 20 martie 2021 14:19:32
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include<fstream>
using namespace std;
int m[101][101];
int main(){
    ifstream fin("royfloyd.in");
    ofstream fout("royfloyd.out");
    int i,j,n,k;
    fin>>n;
    for(i=1;i<=n;i++){
        for(j=1;j<=n;j++){
            fin>>m[i][j];
            if(m[i][j]==0&&i!=j)
                m[i][j]=1000000001;
        }
    }

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

    for(i=1;i<=n;i++){
        for(j=1;j<=n;j++){
            if(m[i][j]==1000000001)
                fout<<0<<" ";
            else
                fout<<m[i][j]<<" ";
        }
        fout<<endl;
    }
    return 0;
}