Cod sursa(job #954368)

Utilizator cousin.batmanVaru Batman cousin.batman Data 28 mai 2013 23:43:06
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<fstream>

using namespace std;

int main(){
    int n;

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

    in>>n;
    int a[n][n], i, j, k;

    for(i=0; i<n; i++)
        for(j=0; j<n; j++)
            in>>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]))
                    a[i][j] = a[i][k]+a[k][j];

    for(i=0; i<n; i++){
        for(j=0; j<n; j++)
            out<<a[i][j]<<" ";
        out<<endl;
    }

    in.close();
    out.close();
    return 0;
}