Cod sursa(job #2137580)

Utilizator theodor.vladTheodor Vlad theodor.vlad Data 20 februarie 2018 21:37:38
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");

int min(int, int);

int n;
int dp[105][105];

int main()
{
	int i, j, k;
	fin >> n;
	for (i = 1; i <= n; i++)
		for (j = 1; j <= n; j++)
			fin >> dp[i][j];
	for (k = 1; k <= n; k++)
		for (i = 1; i <= n; i++)
			for (j = 1; j <= n; j++)
				dp[i][j] = min(dp[i][j], dp[i][k] + dp[k][j]);
	for (i = 1; i <= n; i++)
	{
		for (j = 1; j <= n; j++)
			fout << dp[i][j] << ' ';
		fout << '\n';
	}
	return 0;
}

int min(int a, int b)
{
	return a < b ? a : b;
}