Pagini recente » Cod sursa (job #2309626) | Cod sursa (job #642104) | Cod sursa (job #672531) | Cod sursa (job #2031674) | Cod sursa (job #1145459)
/*
Keep It Simple!
*/
#include<stdio.h>
#include<string.h>
#define MaxN 105
#define inf 1<<30
int RoyFloyd[MaxN][MaxN],N;
int main()
{
freopen("royfloyd.in","r",stdin);
freopen("royfloyd.out","w",stdout);
scanf("%d",&N);
for(int i=1;i<=N;i++)
for(int j=1;j<=N;j++)
RoyFloyd[i][j] = inf;
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( i != j && 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");
}
}