Pagini recente » Cod sursa (job #1919783) | Cod sursa (job #1758973) | Cod sursa (job #1517658) | Cod sursa (job #272821) | Cod sursa (job #2129303)
#include <fstream>
std::ifstream f("royfloyd.in");
std::ofstream g("royfloyd.out");
int cost[101][101];
int N;
int main()
{
f >> N;
int i, j, k;
for (i = 1; i <= N; i++) {
for (j = 1; j <= N; j++) {
f >> cost[i][j];
}
}
for (k = 1; k <= N; ++k) {
for (i = 1; i <= N; ++i) {
for (j = 1; j <= N; ++j) {
if (cost[i][k] && cost[i][j] && i != j && (cost[i][j] > cost[i][k] + cost[k][j] || !cost[i][j])) {
cost[i][j] = cost[i][k] + cost[k][j];
}
}
}
}
for (i = 1; i <= N; ++i, g << "\n") {
for (j = 1; j <= N; ++j) {
g << cost[i][j] << " ";
}
}
return EXIT_SUCCESS;
}