Pagini recente » Cod sursa (job #2657126) | Cod sursa (job #3213756) | Cod sursa (job #2067443) | Cod sursa (job #440403) | Cod sursa (job #2039913)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int main() {
int n;
fin>>n;
int mat[n][n];
for(int i = 0; i < n; ++i) {
for(int j = 0; j < n; ++j) {
fin>>mat[i][j];
}
}
for(int k = 0; k < n; ++k) {
for(int i = 0; i < n; ++i) {
for(int j = 0; j < n; ++j) {
if(mat[i][k] && mat[k][j] && (!mat[i][j] ||
mat[i][k]+mat[k][j]<mat[i][j]) && i != j)
mat[i][j] = mat[i][k] + mat[k][j];
}
}
}
for(int i = 0; i < n; ++i) {
for(int j = 0; j < n; ++j) {
fout<<mat[i][j]<<' ';
} fout<<'\n';
}
return 0;
}