Pagini recente » Cod sursa (job #93159) | Cod sursa (job #1480519) | Cod sursa (job #1866703) | Cod sursa (job #683717) | Cod sursa (job #861958)
Cod sursa(job #861958)
#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]);
//kmin[i][j] = -1;
}
for (k = 0; k < n; k++)
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
{
if (i!=j)
if (dmin[i][k] !=0 && dmin[k][j] !=0 && dmin[i][j] > (dmin[i][k] + dmin[k][j])) {
dmin[i][j] = dmin[i][k] + dmin[k][j];
// kmin[i][j] = k;
}
}
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;
}