Pagini recente » Cod sursa (job #565610) | Cod sursa (job #2408141) | Cod sursa (job #1450620) | Cod sursa (job #446555) | Cod sursa (job #2773062)
#include <bits/stdc++.h>
#define NMAX 101
using namespace std;
ifstream fin ("royfloyd.in");
ofstream fout ("royfloyd.out");
int paths[NMAX][NMAX];
int main() {
int n, m;
fin >> n;
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++)
fin >> paths[i][j];
for(int k = 1; k <= n; k++)
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++)
if(paths[i][k] && paths[k][j] && (paths[i][j] > paths[i][k] + paths[k][j] || !paths[i][j] && i != j))
paths[i][j] = paths[i][k] + paths[k][j];
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= n; j++)
fout << paths[i][j] << ' ';
fout << '\n';
}
}