Pagini recente » Cod sursa (job #1610484) | Cod sursa (job #647953) | Cod sursa (job #1814140) | Cod sursa (job #1526638) | Cod sursa (job #861936)
Cod sursa(job #861936)
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n, i, j, k;
int dmin[101][101];
FILE *fin, *fout;
fin = fopen ("royfloyd.in", "r");
fscanf (fin, "%d", &n);
for (i = 0; i < n; i++)
for (j = 0; j < n; j++) {
fscanf (fin, "%d", &dmin[i][j]);
//dmin[i][j] = mat[i][j];
}
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
for (k = 0; k < n; k++) {
if (i!=j)
if (dmin[i][j] != 0 && dmin[i][k] !=0 && dmin[k][j] && dmin[i][j] > (dmin[i][k] + dmin[k][j]))
dmin[i][j] = dmin[i][k] + dmin[k][j];;
}
fout = fopen ("royfloyd.out", "w");
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
fprintf (fout, "%d ", dmin[i][j]);
}
fprintf (fout, "\n");
}
return 0;
}