Pagini recente » Cod sursa (job #983299) | Cod sursa (job #1642160) | Cod sursa (job #736212) | Cod sursa (job #1332704) | Cod sursa (job #2762930)
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 5 * 1e4 + 65;
const int INF = 1e8;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int matrix[101][102];
int main(){
int n; fin >> n;
for(int i = 1; i <= n; ++i){
for(int j = 1; j <= n; ++j){
fin >> matrix[i][j];
if(matrix[i][j] == 0 and i != j) matrix[i][j] = INF;
}
}
for(int i = 1; i <= n; ++i){
for(int j = 1; j <= n; ++j){
for(int k = 1; k <= n; ++k){
if(i == j || j == k || k == i) continue;
matrix[i][j] = min(matrix[i][j], matrix[i][k] + matrix[k][j]);
}
}
}
for(int i = 1; i <= n; ++i){
for(int j = 1; j <= n; ++j){
fout << matrix[i][j] << ' ';
}
fout << '\n';
}
return 0;
}