Pagini recente » Cod sursa (job #3158231) | Cod sursa (job #2623668) | Cod sursa (job #1551975) | Cod sursa (job #2394011) | Cod sursa (job #2304303)
#include <bits/stdc++.h>
#define DIM 105
#define INF 10000005
using namespace std;
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int n;
int D[DIM][DIM];
int main()
{
in>>n;
for( int i = 1; i <= n; i++ )
for( int j = 1; j <= n; j++ )
{
in>>D[i][j];
if( D[i][j] == 0 )
D[i][j] = INF;
}
for( int k = 1; k <= n; k++ )
for( int i = 1; i <= n; i++ )
for( int j = 1; j <= n; j++ )
if( D[i][j] > D[i][k] + D[k][j] && i != j )
D[i][j] = D[i][k] + D[k][j];
for( int i = 1; i <= n; i++ )
{
for( int j = 1; j <= n; j++ )
if( D[i][j] == INF )
out<<0<<" ";
else
out<<D[i][j]<<" ";
out<<"\n";
}
return 0;
}