Pagini recente » Borderou de evaluare (job #2289827) | Borderou de evaluare (job #1267689) | Borderou de evaluare (job #1027927) | Diferente pentru problema/vila2 intre reviziile 4 si 3 | Cod sursa (job #2964327)
#include <iostream>
#include <cstdio>
using namespace std;
FILE *fin=fopen("royfloyd.in", "r");
FILE *fout=fopen("royfloyd.out", "w");
int mat[105][105];
int main()
{
int n;
fscanf(fin, "%d", &n);
for (int i=1; i<=n; i++) {
for (int j=1; j<=n; j++) {
fscanf(fin, "%d", &mat[i][j]);
}
}
for (int k=1; k<=n; k++) {
for (int i=1; i<=n; i++) {
///drumul de la i la j
for (int j=1; j<=n; j++) {
///vedem daca drumul minim de i-k-j < dMin[i][j]
if (mat[i][k]+mat[k][j]<mat[i][j]) {
mat[i][j]=mat[i][k]+mat[k][j];
}
}
}
}
for (int i=1; i<=n; i++) {
for (int j=1; j<=n; j++) {
fprintf(fout, "%d ", mat[i][j]);
}
fprintf(fout, "\n");
}
return 0;
}