Pagini recente » Cod sursa (job #2494990) | Cod sursa (job #2644992) | Cod sursa (job #445021) | Cod sursa (job #1627159) | Cod sursa (job #1083527)
# include <cstdio>
# define NMax 101
FILE *f,*g;
using namespace std;
int N,Mat[NMax][NMax];
int main()
{
f=fopen("royfloyd.in","r");
g=fopen("royfloyd.out","w");
int i,j,k;
fscanf(f,"%d",&N);
for( i = 1 ; i <= N ; ++i )
for( j = 1 ; j <= N ; ++j )
fscanf(f,"%d",&Mat[i][j]);
for( k = 1 ; k <= N ; ++k )
for( i = 1 ; i <= N ; ++i )
for( j = 1 ; j <= N ; ++j )
if( Mat[i][k] && Mat[k][j] && (Mat[i][j] > Mat[i][k] + Mat[k][j] || !Mat[i][j]) && i != j )
Mat[i][j] = Mat[i][k] + Mat[k][j];
for( i = 1 ; i <= N ; ++i )
{
for( j = 1 ; j <= N ; ++j )
fprintf(g,"%d ",Mat[i][j]);
fprintf(g,"\n");
}
fclose(f);
fclose(g);
return 0;
}