Cod sursa(job #240516)

Utilizator mihai.cuculiciCuculici Mihail mihai.cuculici Data 7 ianuarie 2009 20:00:55
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<fstream>
using namespace std;

int main()
{
    ifstream f ("royfloyd.in");
    ofstream g ("royfloyd.out");
    int a[100][100], n, i, j, k;
    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][j]&&a[i][k]&&a[k][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++)        
         g<<a[i][j]<<" ";
       g<<"\n";  
    }   
    f.close();
    g.close();
    return 0;
}