Pagini recente » Cod sursa (job #2785747) | Cod sursa (job #257947) | Cod sursa (job #2796852) | Cod sursa (job #852441) | Cod sursa (job #1145447)
/*
Keep It Simple!
*/
#include<stdio.h>
#include<string.h>
#define MaxN 101
#define inf 1<<30
int RoyFloyd[MaxN][MaxN],N;
int main()
{
freopen("royfloyd.in","r",stdin);
freopen("royfloyd.out","w",stdout);
scanf("%d",&N);
memset(RoyFloyd,inf,sizeof(RoyFloyd));
for(int i=1; i<=N; i++)
for(int j=1; j<=N; j++)
scanf("%d",&RoyFloyd[i][j]);
// Compute Min road value
for(int k=1; k<=N; k++)
for(int i=1; i<=N; i++)
for(int j=1; j<=N; j++)
{
if( RoyFloyd[i][k]!=inf && RoyFloyd[k][j]!= inf && RoyFloyd[i][k] + RoyFloyd[k][j] < RoyFloyd[i][j] )
RoyFloyd[i][j] = RoyFloyd[i][k] + RoyFloyd[k][j];
}
for(int i=1; i<=N; i++)
{
for(int j=1; j<=N; j++)
{
if(RoyFloyd[i][j] == inf )
printf("0 ");
else
printf("%d ",RoyFloyd[i][j]);
}
printf("\n");
}
}