Pagini recente » Cod sursa (job #381618) | Istoria paginii runda/20_februarie_simulare_oji_2024_clasa_10/clasament | Cod sursa (job #2759095) | Cod sursa (job #555725) | Cod sursa (job #202106)
Cod sursa(job #202106)
#include <stdio.h>
#define INF 100000
long m[101][101];
int main ()
{FILE *fin=fopen("royfloyd.in","r");
FILE*fout=fopen("royfloyd.out","w");
int i,j,k,n;
fscanf(fin,"%d",&n);
for (i=1;i<=n;i++)
{for(j=1;j<=n;j++)
{fscanf(fin,"%ld",&m[i][j]);
if (i!=j&&m[i][j]==0){m[i][j]=INF;}
}
}
for (k=1;k<=n;k++)
{for (i=1;i<=n;i++)
{for(j=1;j<=n;j++)
{if(m[i][k]+m[k][j]<m[i][j])
{m[i][j]=m[i][k]+m[k][j];
}
}
}
}
for (i=1;i<=n;i++)
{for(j=1;j<=n;j++)
{if (m[i][j]==INF){m[i][j]=0;}
fprintf(fout,"%ld ",m[i][j]);
}
fprintf(fout,"\n");
}
fclose(fout);
fclose(fin);
return 0;
}