Cod sursa(job #1647501)
| Utilizator | Data | 10 martie 2016 20:53:31 | |
|---|---|---|---|
| Problema | Floyd-Warshall/Roy-Floyd | Scor | 10 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.59 kb |
#include <fstream>
using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int G[101][101],i,j,n,m,k;
int main()
{
fin>>n;
for( i = 1 ; i <= n ; i++ )
for( j = 1 ; j <= n ; j++ )
fin>>G[ i ][ j ];
for( i = 1 ; i <= n ; i++ )
for( j = 1 ; j <= n ; j++ )
for( k = 1 ; k <= n ; k++ )
if( G[ i ][ j ] > G[ i ][ k ] + G[ k ][ j ] )
G[ i ][ j ] = G[ i ][ k ] + G[ k ][ j ];
for( i = 1 ; i <= n ; i++, fout<<'\n' )
for( j = 1 ; j <= n ; j++ )
fout<<G[ i ][ j ]<<' ';
return 0;
}
