Pagini recente » Cod sursa (job #579643) | Istoria paginii runda/joi_25/clasament | Cod sursa (job #1112037) | Cod sursa (job #3166388) | Cod sursa (job #2420428)
#include <iostream>
#include <fstream>
using namespace std;
#define NMAX 105
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int nrNoduri, matriceCosturi[NMAX][NMAX];
void royFloyd(){
for ( int k = 1; k <= nrNoduri; k++)
for ( int i = 1; i <= nrNoduri; i++)
for ( int j = 1; j <= nrNoduri; j++)
if ( matriceCosturi[i][j] > matriceCosturi[i][k] + matriceCosturi[k][j] )
matriceCosturi[i][j] = matriceCosturi[i][k] + matriceCosturi[k][j];
}
int main(){
fin >> nrNoduri;
for ( int i = 1; i <= nrNoduri; i++)
for ( int j = 1; j <= nrNoduri; j++)
fin >> matriceCosturi[i][j];
royFloyd();
for ( int i = 1; i <= nrNoduri; i++){
for ( int j = 1; j <= nrNoduri; j++)
fout << matriceCosturi[i][j] << " ";
fout << "\n";
}
return 0;
}