Cod sursa(job #2547538)

Utilizator Alex2421Nedelcu Alexandru Alex2421 Data 15 februarie 2020 14:00:54
Problema Floyd-Warshall/Roy-Floyd Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <bits/stdc++.h>

using namespace std;

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

int const lim=101;
int const oo = ( 1 << 30);
int n,v[lim][lim];

int main()
{
    in>>n;
    for(int i=1;i<=n;i++)
    for(int j=1;j<=n;j++)
        {
            in>>v[i][j];
            if(i!=j && v[i][j]==0)
                v[i][j]=oo;
        }
    for(int nod=1;nod<=n;nod++)
        for(int i=1;i<=n;i++)
         for(int j=1;j<=n;j++)
        if(v[i][j]> v[nod][j]+v[i][nod])
           v[i][j]=v[nod][j]+v[i][nod];

    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=n;j++)
            out<<v[i][j]<<" ";
        out<<'\n';
    }
}