Pagini recente » Cod sursa (job #1603071) | Cod sursa (job #168370) | Cod sursa (job #1133265) | Cod sursa (job #239430) | Cod sursa (job #3197345)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("royfloyd.in");
ofstream fout ("royfloyd.out");
int n;
int mat[105][105];
int cost[105][105];
int main()
{
fin>>n;
for (int i=1; i<=n; i++)
for (int j=1; j<=n; j++) {
fin>>cost[i][j];
}
for (int z=1; z<=n; z++) {
for (int x=1; x<=n; x++) {
for (int y=1; y<=n; y++)
if (cost[x][z] && cost[z][y] && (cost[x][z]+cost[z][y]<cost[x][y] || !cost[x][y]))
cost[x][y]=cost[x][z]+cost[z][y];
}
}
for (int i=1; i<=n; i++) {
for (int j=1; j<=n; j++)
if (i==j) fout<<0<<' ';
else
fout<<cost[i][j]<<' ';
fout<<'\n';
}
return 0;
}