Pagini recente » Cod sursa (job #1472518) | Statistici Andrei Diana (Diana2907) | Rating Iuliana Corbu (Iulia515) | Monitorul de evaluare | Cod sursa (job #1206548)
#include <stdio.h>
#include <algorithm>
int N, D[101][101];
FILE *in, *out;
int main()
{
in = fopen("royfloyd.in", "r");
out = fopen("royfloyd.out", "w");
fscanf(in, "%d", &N);
for(int i = 1; i <= N; i++)
for (int j = 1; j <= N; j++)
fscanf(in, "%d", &D[i][j]);
for(int k = 1; k <= N; k++)
for(int i = 1; i <= N; i++)
for(int j = 1; j <= N && i != j; j++){
D[i][j] = std::min(D[i][j], D[i][k] + D[k][j]);
}
for(int i = 1; i <= N; i++){
for(int j = 1; j <= N; j++)
fprintf(out, "%d ", D[i][j]);
fprintf(out, "\n");
}
fclose(in);
fclose(out);
return 0;
}