Pagini recente » Profil HadircaDionisie | Cod sursa (job #128968) | Cod sursa (job #1243751) | Cod sursa (job #2897768) | Cod sursa (job #786044)
Cod sursa(job #786044)
#include <iostream>
#include <fstream>
#define _MAX_N 101
std::ifstream f("royfloyd.in");
std::ofstream g("royfloyd.out");
int d[_MAX_N][_MAX_N];
int n;
void read_data()
{
f >> n;
for (int i = 0; i < n; i ++) {
for (int j = 0; j < n; j ++) {
f >> d[i][j];
}
}
}
void royfloyd()
{
for (int k = 0; k < n; k ++) {
for (int i = 0; i < n; i ++) {
for (int j = 0; j < n; j ++) {
if (d[i][k] && d[k][j] && d[i][j] > d[i][k] + d[k][j]) {
d[i][j] = d[i][k] + d[k][j];
}
}
}
}
}
void print_solution()
{
for (int i = 0; i < n; i ++) {
for (int j = 0; j < n; j ++) {
g << d[i][j] << ' ';
}
g << '\n';
}
}
int main()
{
read_data();
royfloyd();
print_solution();
return 0;
}