Pagini recente » Cod sursa (job #2204082) | Cod sursa (job #414412) | Cod sursa (job #2680529) | Cod sursa (job #1250327) | Cod sursa (job #2801396)
#include <bits/stdc++.h>
using namespace std;
int d[257][257];
int main()
{
ifstream cin("royfloyd.in");
ofstream cout("royfloyd.out");
int n, i, j, k;
cin >> n;
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
{
cin >> d[i][j];
}
for (k = 0; k < n; k++)
{
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
if (i != j && ((d[i][j] > d[i][k] + d[k][j] && d[i][k] > 0 && d[k][j] > 0) || (d[i][j] == 0 && d[i][k] > 0 && d[k][j] > 0)))
d[i][j] = d[i][k] + d[k][j];
}
}
}
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
cout << d[i][j] << " ";
}
cout << '\n';
}
/*for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
cout << dist[i][j] << " ";
}
cout << '\n';
}*/
return 0;
}