Pagini recente » Cod sursa (job #2523295) | Cod sursa (job #2318668) | Cod sursa (job #571107) | Cod sursa (job #2458655) | Cod sursa (job #2911764)
#include <cstdio>
using namespace std;
FILE *fin, *fout;
#define NMAX 100
int a[NMAX + 5][NMAX + 5];
int main()
{
fin = fopen("royfloyd.in", "r");
fout = fopen("royfloyd.out", "w");
int n;
fscanf(fin, "%d", &n);
int i, j, k;
for(i = 1; i <= n; i++)
for(j = 1; j <= n; j++)
fscanf(fin, "%d", &a[i][j]);
for(k = 1; k <= n; ++k)
for(i = 1; i <= n; i++)
for(j = 1; j <= n; j++)
if(a[i][k] and a[k][j] and i != j and a[i][k] + a[k][j] < a[i][j])
a[i][j] = a[i][k] + a[k][j];
for(i = 1; i <= n; i++)
{
for(j = 1; j <= n; j++)
fprintf(fout, "%d ", a[i][j]);
fprintf(fout, "\n");
}
fclose(fin);
fclose(fout);
return 0;
}