Cod sursa(job #2232578)

Utilizator AvramDanielAvram Daniel AvramDaniel Data 20 august 2018 11:42:30
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <bits/stdc++.h>
using namespace std;

int n,dist[110][110];

int main()
{
    ifstream cin("royfloyd.in");
    ofstream cout("royfloyd.out");
    cin>>n;
    for(int i=1;i<=n;i++)
        for(int j=1;j<=n;j++)
        {
            cin>>dist[i][j];
            if(!dist[i][j] && i!=j) dist[i][j]=10000010;
        }
    for(int k=1;k<=n;k++)
        for(int i=1;i<=n;i++)
            for(int j=1;j<=n;j++)
                dist[i][j]=min(dist[i][j],dist[i][k]+dist[k][j]);
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=n;j++)
           if(dist[i][j]==10000010) cout<<0<<' ';
            else cout<<dist[i][j]<<' ';
        cout<<'\n';
    }
    return 0;
}