Cod sursa(job #546809)

Utilizator blastoiseZ.Z.Daniel blastoise Data 5 martie 2011 15:21:43
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <stdio.h>

int N,i,j,k;
int A[102][102];

int main()
{
	freopen("royfloyd.in","r",stdin);
	freopen("royfloyd.out","w",stdout);

	scanf("%d",&N);

	for(i=1;i<=N;i++)
		for(j=1;j<=N;j++)
			scanf("%d",&A[i][j]);

	for(k=1;k<=N;k++)
		for(i=1;i<=N;i++)
			for(j=1;j<=N;j++)
				if(A[i][j]>A[i][k]+A[k][j])
					A[i][j]=A[i][k]+A[k][j];

	for(i=1;i<=N;i++)
	{
		for(j=1;j<N;j++)
			printf("%d ",A[i][j]);
		printf("%d\n",A[i][N]);
	}

	return 0;
}