Pagini recente » Rating Bucur Sebastian (Sebibucur) | Cod sursa (job #997630) | Cod sursa (job #2024560) | Cod sursa (job #1465115) | Cod sursa (job #1649382)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
const int NMax = 105;
int D[NMax][NMax];
int main(){
int n;
fin >> n;
for(int i = 1; i <= n; i++){
for(int j = 1; j <= n; j++){
fin >> D[i][j];
}
}
for(int k = 1; k <= n; k++){
for(int i = 1; i <= n; i++){
for(int j = 1; j <= n; j++){
if((D[i][k] * D[k][j] != 0) && i != j && (D[i][j] > D[i][k] + D[k][j] || !D[i][j])){
D[i][j] = D[i][k] + D[k][j];
}
}
}
}
for(int i = 1; i <= n; i++){
for(int j = 1; j <= n; j++){
fout << D[i][j] << " ";
}
fout << "\n";
}
return 0;
}