Cod sursa(job #2975858)

Utilizator dumitrache12Dumitrache Iulian dumitrache12 Data 7 februarie 2023 19:08:45
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include<bits/stdc++.h>
using namespace std;

const int N = 105;

//ifstream in ("royfloyd.in");
//ofstream out("royfloyd.out");
auto& in = cin;
auto& out = cout;

int n, m[N][N];

void read()
{
	in>>n;
	for(int i=0;i<n;i++)
		for(int j=0;j<n;j++)
			in>>m[i][j];
}
void royfloyd()
{
	for(int i=0;i<n;i++)
		for(int j=0;j<n;j++)
			for(int k=0;k<n;k++)
				if(m[i][k] && m[k][j])
					m[i][j] = min(m[i][j], m[i][k] + m[k][j]);
}
void show()
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
			out<<m[i][j]<<' ';
		out<<endl;
	}
}
int main(){
	read();
	royfloyd();
	show();
	return 0;
}