Pagini recente » Cod sursa (job #2101027) | Cod sursa (job #590092) | Cod sursa (job #1807567) | Cod sursa (job #1844213) | Cod sursa (job #2208835)
#include<iostream>
#include<fstream>
using namespace std;
int n, a[1000][1000];
void roy_floyd()
{
for (int k = 1; k <= n; k++)
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
if (a[k][j] != 0 && a[i][k] != 0 && i!=j)
if (a[i][j] == 0 || a[i][j] > a[k][j] + a[i][k])
a[i][j] = a[k][j] + a[i][k];
}
int main()
{
ifstream g("royfloyd.in");
g >> n;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
g >> a[i][j];
g.close();
roy_floyd();
ofstream h("royfloyd.out");
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= n; j++)
h << a[i][j] << ' ';
h << endl;
}
h.close();
}