Pagini recente » Borderou de evaluare (job #2739373) | Borderou de evaluare (job #2035372) | Borderou de evaluare (job #146118) | Cod sursa (job #3195213)
#include <bits/stdc++.h>
using namespace std;
#define NMAX 102
int n, a[NMAX][NMAX];
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int main() {
in >> n;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
in >> a[i][j];
}
}
for (int k = 0; k < n; k++)
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
if (a[i][k] && a[k][j] && i != j && (a[i][j] > a[i][k] + a[k][j] || !a[i][j]))
a[i][j] = a[i][k] + a[k][j];
}
}
}
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
out << a[i][j] << ' ';
}
out << '\n';
}
}