Cod sursa(job #578466)

Utilizator @LynTirla Alin @Lyn Data 11 aprilie 2011 12:25:12
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<fstream>
using namespace std;
int n,m;
int cost[101][101];
ifstream f1("royfloyd.in");
ofstream f2("royfloyd.out");
void citire()
{f1>>n;
{for(int i=1;i<=n;++i)
	for(int d=1;d<=n;++d)
		f1>>cost[i][d];
}
}
void roy()
{for(int i=1;i<=n;++i)
	for(int d=1;d<=n;++d)
		for(int z=1;z<=n;++z)
			if((cost[d][z]>cost[i][z]+cost[d][i])&&(cost[i][z])&&(cost[d][i]))
			{cost[d][z]=cost[i][z]+cost[d][i];
			}
}
void afisare()
{
for(int i=1;i<=n;++i)
	{for(int d=1;d<=n;++d)
		f2<<cost[i][d]<<" ";
	f2<<'\n';
	}
}
int main()
{
	
citire();
roy();

afisare();


return 0;
}