Cod sursa(job #410140)

Utilizator cartkidPostolache Florin cartkid Data 4 martie 2010 09:48:17
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("date.in");
ofstream g("royfloyd.out");
int v[101][101],n;
void citire()
{
	f>>n;
	for(int i=1;i<=n;i++) 
		for(int j=1;j<=n;j++)
			f>>v[i][j];
}
int min(int i,int j)
{
	if(i<j)return i;
	else return j;
}
void parcurgere()
{
	for(int k=1;k<=n;k++)
		for(int i=1;i<=n;i++)
			for(int j=1;j<=n;j++)
				if(v[i][k]&&v[k][j]&&v[i][k]+v[k][j]<v[i][j])
					v[i][j]=v[i][k]+v[k][j];
}
void afisare()
{
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
			g<<v[i][j]<<" ";
	g<<"\n";
	}
}
int main()
{
	citire();
	parcurgere();
	afisare();
}