Pagini recente » Cod sursa (job #2958750) | Cod sursa (job #3281159) | Cod sursa (job #1500383) | Cod sursa (job #2250850) | Cod sursa (job #174108)
Cod sursa(job #174108)
#include<fstream.h>
#include<stdio.h>
long int n,mat[100][100];
//ifstream f("date.in");
//ofstream g("date.out");
int main()
{//f>>n>>m;
freopen("royfloyd.in","rt",stdin);
freopen("royfloyd.out","wt",stdout);
scanf("%ld",&n);
int i,j;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{scanf("%ld",&mat[i][j]);
if(i!=j && mat[i][j]==0) mat[i][j]=250000;
}
//for(i=1;i<=n;i++)
// for(j=1;j<=n;j++)
// if(i!=j && mat[i][j]==0) mat[i][j]=32000;
int k;
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(i!=k && j!=k && i!=j && mat[i][j]>(mat[i][k]+mat[k][j]))
mat[i][j]=mat[i][k]+mat[k][j];
for(i=1;i<=n;i++)
{for(j=1;j<=n;j++)
if(mat[i][j]<250000) printf("%ld ",mat[i][j]);
else printf("0");
printf("\n");
}
return 0;
}