Cod sursa(job #2605984)

Utilizator Gliumarin negai Gliu Data 26 aprilie 2020 16:47:40
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>
#include <fstream>
#include <bits/stdc++.h>
using namespace std;

ifstream in("royfloyd.in");
ofstream out("royfloyd.out");

int n,a[1000][1000];
int main(){

in >>n;
for(int i=1;i<=n;i++){
	for(int j=1;j<=n;j++){
	in>>a[i][j];
}

}

for(int k=1;k<=n;k++){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			if(a[i][k] && a[k][j] && i != j){
				a[i][j]=min(a[i][j],a[i][k]+a[k][j]);
			}
			
		}
	}
}

for(int i=1;i<=n;i++){
	for(int j=1;j<=n;j++){
	out<<a[i][j]<<" ";
}
out<<"\n";
}
}