Pagini recente » Cod sursa (job #2105918) | Cod sursa (job #1189741) | Cod sursa (job #1696014) | Cod sursa (job #1229861) | Cod sursa (job #642069)
Cod sursa(job #642069)
#include<cstdio>
using namespace std;
int d[1010][1010];
int main()
{
int i, n, j, k, l, m;
freopen ("royfloyd.in", "r", stdin);
freopen ("royfloyd.out", "w", stdout);
scanf ("%d", &n);
for (l=1; l<=n; l++)
for (m=1; m<=n; m++)
{
scanf("%d", &d[l][m]);
if (d[l][m]==0 && l!=m)
d[l][m]=0x3f3f3f3f;
}
for (k=1; k<=n; k++)
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
if (d[i][k]+d[k][j]<d[i][j])
d[i][j]=d[i][k]+d[k][j];
for (l=1; l<=n; l++)
{ for (m=1; m<=n; m++)
{
if (d[l][m]==0x3f3f3f3f)
printf ("0 ");
else
printf ("%d ", d[l][m]);
}
printf ("\n");
}
return 0;
}