Cod sursa(job #2671640)
| Utilizator | Data | 12 noiembrie 2020 14:59:00 | |
|---|---|---|---|
| Problema | Floyd-Warshall/Roy-Floyd | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.47 kb |
#include <fstream>
#define fisier "royfloyd"
std::ifstream in(fisier ".in");
std::ofstream out(fisier ".out");
const int N = 100, V = 1000;
int C[N][N];
#define F(i) for (int i = 0; i < n; i++)
#define c C[i][j]
int main()
{
int n;
in >> n;
F(i) F(j)
in >> c, c = c or i == j? c: N*V;
F(k) F(i) F(j)
c = std::min(c, C[i][k] + C[k][j]);
F(i)
{
F(j) out << (c == N*V? 0: c) << ' ';
out << '\n';
}
}
