Pagini recente » Cod sursa (job #1608465) | Cod sursa (job #1916739) | Cod sursa (job #1370029) | Istoria paginii runda/vot/voteaza_miruna/clasament | Cod sursa (job #936434)
Cod sursa(job #936434)
#include <fstream>
using namespace std;
int main() {
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
const int inf = 1e6;
int n; fin >> n;
int a[n][n];
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
fin >> a[i][j];
if (i != j && a[i][j] == 0) a[i][j] = inf;
}
}
for (int k = 0; k < n; ++k)
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
a[i][j] = min(a[i][j], a[i][k]+a[k][j]);
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
if (a[i][j] >= inf) a[i][j] = 0;
fout << a[i][j] << ' ';
}
fout << '\n';
}
return 0;
}