Pagini recente » Cod sursa (job #2533490) | Cod sursa (job #74215) | Cod sursa (job #980059) | Cod sursa (job #419375) | Cod sursa (job #2300296)
#include <bits/stdc++.h>
#define MAX 110
using namespace std;
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
int n, a[MAX][MAX];
void royfloyd (){
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){
if (a[i][j] > a[i][k] + a[k][j] || !a[i][j]){
a[i][j] = a[i][k] + a[k][j];
}
}
}
}
}
}
int main()
{
f >> n;
for (int i = 1; i <= n; i++){
for (int j = 1; j <= n; j++){
f >> a[i][j];
}
}
royfloyd();
for (int i = 1; i <= n; i++){
for (int j = 1; j <= n; j++){
g << a[i][j] << ' ';
}
g << '\n';
}
return 0;
}