Pagini recente » Cod sursa (job #1362802) | Cod sursa (job #1641356) | Cod sursa (job #1504049) | Cod sursa (job #191909) | Cod sursa (job #2602969)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int matrice[101][101];
int N;
void citire(){
fin>>N;
for(int i=1;i<=N;i++){
for(int j=1;j<=N;j++){
fin>>matrice[i][j];
}
}
}
void rezolvare(){
int i,j,k;
for(k=1;k<=N;k++){
for(i=1;i<=N;i++){
for(j=1;j<=N;j++){
if(matrice[i][j] && i!=j && matrice[i][j] > matrice[i][k] + matrice[k][j]) matrice[i][j] = matrice[i][k] + matrice[k][j];
}
}
}
}
void afisare(){
for(int i=1;i<=N;i++){
for(int j=1;j<=N;j++){
fout<<matrice[i][j]<<" ";
}
fout<<"\n";
}
fout.close();
}
int main(){
citire();
rezolvare();
afisare();
return 0;
}