Pagini recente » Cod sursa (job #1726631) | Cod sursa (job #2137431) | Cod sursa (job #976538) | Cod sursa (job #2347054) | Cod sursa (job #1122617)
#include <fstream>
using namespace std;
ifstream f("royfloyd.in"); ofstream g("royfloyd.out");
short a[1002][1002],n;
void citire(){
int i,j;
f>>n;
for (i=1;i<=n;i++)
for(j=1;j<=n;j++)
f>>a[i][j];
}
void royfloyd(){
int i,j,p;
for (p=1;p<=n;p++)
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
if (a[i][p] && a[p][j] && (a[i][j] > a[i][p] + a[p][j] || !a[i][j]) && i != j) a[i][j] = a[i][p] + a[p][j];
}
void afisare(){
int i,j;
for (i=1;i<=n;i++){
for(j=1;j<=n;j++)
g<<a[i][j]<<' ';
g<<'\n';
}
}
int main(){
citire();
royfloyd();
afisare();
}