Pagini recente » Cod sursa (job #2617389) | Cod sursa (job #1851729) | Cod sursa (job #1917188) | Cod sursa (job #2249337) | Cod sursa (job #2337012)
#include <iostream>
#include <fstream>
using namespace std;
const int Maxx=1e2+2;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int n;
int A[Maxx][Maxx];
void royfloyd(){
int i,j,k;
for (k=1;k<=n;++k){
for (i=1;i<=n;++i){
for (j=1;j<=n;++j){
if (A[i][k] && A[k][j] && i!=j && (A[i][j]>A[i][k]+A[k][j] || !A[i][j])){
A[i][j]=A[i][k]+A[k][j];
}
}
}
}
}
int main() {
fin>>n;
int i,j;
for (i=1;i<=n;++i){
for(j=1;j<=n;++j){
fin>>A[i][j];
}
}
royfloyd();
for (i=1;i<=n;++i){
for (j=1;j<=n;++j){
fout<<A[i][j]<<" ";
}
fout<<"\n";
}
return 0;
}