Cod sursa(job #679907)

Utilizator DevilShadowJunc Raul Cosmin DevilShadow Data 13 februarie 2012 20:43:25
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
#define sizen 110

int a[sizen][sizen], n;
using namespace std;

int main()
{
	ifstream f("royfloyd.in");
	ofstream g("royfloyd.out");
	
	f >> n;
	for(int i = 0; i < n; i ++)
		for(int j = 0; j < n; j ++)
			f >> a[i][j];
	
	for(int k = 0; k < n; k ++)
		for(int i = 0; i < n; i ++)
			for(int j = 0; j < n; j ++)
				if(a[i][k] && a[k][j] && i != j)
					if(a[i][j] > a[i][k] + a[k][j])
						a[i][j] = a[i][k] + a[k][j];
	
	for(int i = 0; i < n; i ++)
	{
		for(int j = 0; j < n; j ++)
			g << a[i][j] << ' ';
		g << '\n';
	}
}