Cod sursa(job #706036)

Utilizator fhandreiAndrei Hareza fhandrei Data 5 martie 2012 14:12:58
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
//Ce stil am ;x
//Include
#include <stdio.h>
#include <algorithm>
using namespace std;

//Constante
const int MAX_SIZE=101;

//Variabile
FILE *in, *out;

int n;
int a[MAX_SIZE][MAX_SIZE];

//Main
int main()
{
	in=fopen("royfloyd.in","rt");
	out=fopen("royfloyd.out","wt");
	fscanf(in, "%d",&n);
	for(int i=1;i<=n;++i)
		for(int j=1;j<=n;++j)
			fscanf(in, "%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=1;i<=n;++i)
	{
		for(int j=1;j<=n;++j)
			fprintf(out, "%d ",a[i][j]);
		fprintf(out, "\n");
	}
	
	fclose(in);
	fclose(out);
	return 0;
}

//Ce stil am ;x