Cod sursa(job #2610091)

Utilizator toadehuPuscasu Razvan Stefan toadehu Data 4 mai 2020 13:54:01
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.81 kb
#include <bits/stdc++.h>

int n,g[109][109];

int main()
{
    ifstream fin ("royfloyd.in");
    ofstream fout ("royfloyd.out");
    fin>>n;
    for (int i=1; i<=n; ++i)
    {
        for(int j=1; j<=n; ++j)
        {
            fin>>g[i][j];
            if (i!=j && g[i][j]==0)
            {
                g[i][j]=1e9;
            }
        }
    }
    for (int k=1; k<=n; ++k)
    {
        for (int i=1; i<=n; ++i)
        {
            for (int j=1; j<=n; ++j)
            {
                if(g[i][j]>g[i][k]+g[k][j])
                {
                    g[i][j]=g[i][k]+g[k][j];
                }
            }
        }
    }
    for (int i=1; i<=n; ++i)
    {
        for (int j=1; j<=n; ++j)
        {
            fout<<g[i][j]<<"\n";
        }
        fout<<"\n";
    }
}