Cod sursa(job #1599729)

Utilizator cosmin.vasilache95Vasilache Cosmin Teodor cosmin.vasilache95 Data 14 februarie 2016 12:12:33
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <iostream>
#include <fstream>
using namespace std;
int a[101][101],n,k,i,j;
int main() {

    fstream f("royfloyd.in",ios::in);
    fstream g("royfloyd.out",ios::out);


    f >> n;

    for(i=0;i<n;i++)
        for(j=0;j<n;j++)
            f>> a[i][j];

    for(k=0;k<n;k++)
        for(i=0;i<n;i++)
            for(j=0;j<n;j++)
                if (a[i][k] && a[k][j] && (a[i][j] > a[i][k] + a[k][j] || !a[i][j]) && i != j)
                    a[i][j] = a[i][k] + a[k][j];


    for(i=0;i<n;i++){
        for(j=0;j<n;j++)
            g<< a[i][j]<< " ";
        g<<'\n';
        }

    return 0;
}