Pagini recente » Cod sursa (job #456337) | Cod sursa (job #2652960) | Cod sursa (job #527186) | Cod sursa (job #2853593) | Cod sursa (job #1037907)
#include <stdio.h>
#define IN "royfloyd.in"
#define OUT "royfloyd.out"
#define NMAX 105
#define INF 1000000
int n,i,j,k;
int cost[NMAX][NMAX];
int main()
{
FILE * fin=fopen(IN,"r");
FILE * fout=fopen(OUT,"w");
fscanf(fin,"%d",&n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
fscanf(fin,"%d",&cost[i][j]);
if(cost[i][j]==0 && i!=j)
cost[i][j]=INF;
}
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(cost[i][j]>cost[i][k]+cost[k][j])
cost[i][j]=cost[i][k]+cost[k][j];
for(i=1;i<=n;i++)
{
fprintf(fout,"%d",cost[i][1]);
for(j=2;j<=n;j++)
fprintf(fout," %d",cost[i][j]);
fprintf(fout,"\n");
}
fclose(fin);
fclose(fout);
return 0;
}