Pagini recente » Cod sursa (job #2663890) | Cod sursa (job #182358) | Cod sursa (job #1968610) | Cod sursa (job #140220) | Cod sursa (job #2364624)
#include <cstdio>
int N, adj[101][101], dist[101][101];
int minimum(int x, int y) {
return x < y ? x : y;
}
int main() {
freopen("royfloyd.in", "r", stdin);
freopen("royfloyd.out", "w", stdout);
scanf("%d", &N);
for (int it = 0; it < N; ++it) {
for (int jt = 0; jt < N; ++jt) {
scanf("%d", &adj[it][jt]);
dist[it][jt] = adj[it][jt];
}
}
for (int it = 0; it < N; ++it) {
for (int jt = 0; jt < N; ++jt) {
for (int kt = 0; kt < N; ++kt) {
dist[it][jt] = minimum(dist[it][jt], dist[it][kt] + dist[kt][jt]);
}
}
}
for (int it = 0; it < N; ++it) {
for (int jt = 0; jt < N; ++jt) {
printf("%d ", dist[it][jt]);
}
printf("\n");
}
return 0;
}