Cod sursa(job #2572773)

Utilizator rd211Dinucu David rd211 Data 5 martie 2020 14:14:38
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.82 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
const int NMAX = 110;
int n;
int matrixe[NMAX][NMAX];
int main()
{
    cin>>n;
    for(int i = 0;i<n;i++)
    {
        for(int j = 0;j<n;j++)
        {
            cin>>matrixe[i][j];
        }
    }
    for(int i = 0;i<n;i++)
    {
        for(int j = 0;j<n;j++)
        {
            for(int k = 0;k<n;k++)
            {
                if(i!=j && matrixe[i][j] && matrixe[j][k])
                matrixe[i][j] = min(matrixe[i][j],
                                    matrixe[i][k]+matrixe[k][j]);
            }
        }
    }
    for(int i = 0;i<n;i++)
    {
        for(int j = 0;j<n;j++)
        {
            cout<<matrixe[i][j]<<' ';
        }
        cout<<'\n';
    }
    return 0;
}