Pagini recente » Cod sursa (job #2784501) | Cod sursa (job #1626222) | Cod sursa (job #2858649) | Cod sursa (job #169535) | Cod sursa (job #760628)
Cod sursa(job #760628)
#include <stdio.h>
void main(void){
FILE *fin=fopen("royfloyd.in","r");
FILE *fout=fopen("royfloyd.out","w");
int n,i,j,k,a[101][101];
fscanf(fin,"%d",&n);
for (i=1;i<=n;i++)
for (j=1;j<=n;j++) fscanf(fin,"%d",&a[i][j]);
fclose(fin);
for (k=1;k<=n;k++)
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
if (a[i][k] && a[k][j] && i!=j)
if ((a[i][j]>a[i][k]+a[k][j]) || (a[i][j]==0)) a[i][j]=a[i][k]+a[k][j];
for (i=1;i<=n;i++){
for (j=1;j<=n;j++) fprintf(fout,"%d ",a[i][j]);
fprintf(fout,"\n");
}
fclose(fout);
}