Cod sursa(job #3284131)

Utilizator drsbosDarius Scripcaru drsbos Data 11 martie 2025 10:12:50
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.89 kb
#include <fstream>
#include <stack>
#include <queue>
#include <cmath>
#include <algorithm>
#include <iostream>
#include <set>
#include <cstring>
#include <map>
#include <string>
#include <bitset>
#include <unordered_map>
#include <unordered_set>
#define oo 2000000
#define MOD 1000000007
using namespace std;

ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int a[105][105], n;
int main()
{
	fin >> n;
	for(int i=1;i<=n;i++)
		for (int j = 1; j <= n; j++)
		{
			fin >> a[i][j];
			if (a[i][j] == 0)
			{
				a[i][j] = 2e9;
			}
		}
	for (int k = 1; k <= n; k++)
		for (int i = 1; i <= n; i++)
			for (int j = 1; j <= n; j++)
				if (a[i][j] > a[i][k] + a[k][j])
					a[i][j] = a[i][k] + a[k][j];
	for (int i = 1; i <= n; i++, fout << endl)
		for (int j = 1; j <= n; j++)
			if (a[i][j] == 2e9)
				fout << "0 ";
			else
			fout << a[i][j] << " ";


}