Pagini recente » Cod sursa (job #191588) | Cod sursa (job #2695614) | Cod sursa (job #2949827) | Cod sursa (job #2846035) | Cod sursa (job #157516)
Cod sursa(job #157516)
#include <stdio.h>
#include <stdlib.h>
#define NX 128
#define INF 0x3f3f3f3f
int A[ NX ][ NX ], D[ NX ][ NX ];
int N;
void cit() {
int i, j, x;
scanf( "%d", &N );
for( i = 1; i <= N; i++ )
for( j = 1; j <= N; j++ ) {
scanf( "%d", &x );
D[i][j] = A[i][j] = x ? x : ( i == j ? 0 : INF );
}
}
void rez() {
int i, j, k;
for( k = 1; k <= N; k++ )
for( i = 1; i <= N; i++ )
for( j = 1; j <= N; j++ )
if( D[i][j] > D[i][k] + D[k][j] )
D[i][j] = D[i][k] + D[k][j];
}
void scr() {
int i, j;
for( i = 1; i <= N; i++ ) {
for( j = 1; j <= N; j++ )
printf( "%d ", D[i][j] );
printf( "\n" );
}
}
int main() {
freopen( "royfloyd.in", "r", stdin );
freopen( "royfloyd.out", "w", stdout );
cit();
rez();
scr();
return 0;
}