Cod sursa(job #612894)

Utilizator sergiupPopescu Sergiu sergiup Data 12 septembrie 2011 19:25:25
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <stdio.h>
#include <algorithm>

using namespace std;
int a[128][128];

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

	int n;
	scanf("%d",&n);
	for (int i = 1 ; i <= n ; ++i)
		for (int j = 1 ; j <= n ; ++j)
			scanf("%d",&a[i][j]);

	for (int k = 1 ; k <= n ; ++k)
		for (int i = 1 ; i <= n ; ++i)
			for (int j = 1; j <= n ; ++j)
				a[i][j] = min(a[i][j],a[i][k] + a[k][j]);

	for (int i = 0 ; i < n ; ++i)
	{
		for (int j = 0 ; j < n ; ++j)
			printf("%d ",a[i][j]);
		printf("\n");
	}

	return 0;
}