Cod sursa(job #2421923)

Utilizator ElektrykT E S L A P E F E L I E Elektryk Data 16 mai 2019 18:18:49
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>

using namespace std;

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

int n;

int dp[107][107];

int main()
{
    in>>n;
    for (register int i=1; i<=n; ++i)
        for (register int j=1; j<=n; ++j)
            in>>dp[i][j];
    for (register int k=1; k<=n; ++k)
        for (register int i=1; i<=n; ++i)
            for (register int j=1; j<=n; ++j)
                    if (i != j && dp[i][k] && dp[k][j])
                        dp[i][j] = min (dp[i][j], dp[i][k]+dp[k][j]);
    for (register int i=1; i<=n; ++i)
    {
        for (register int j=1; j<=n; ++j)
            out<<dp[i][j]<<" ";
        out<<'\n';
    }
    return 0;
}