Pagini recente » Cod sursa (job #1768650) | Cod sursa (job #151) | Cod sursa (job #709698) | Cod sursa (job #2929931) | Cod sursa (job #164675)
Cod sursa(job #164675)
#include<stdio.h>
#define input "royfloyd.in"
#define output "royfloyd.out"
#define dim 101
void rf();
int n, a[dim][dim];
int main()
{
FILE *in, *out;
in = fopen (input, "r");
out = fopen (output, "w");
int i, j;
fscanf(in, "%d", &n);
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
fscanf(in, "%d", &a[i][j]);
rf();
for(i=1; i<=n; i++)
{
for(j=1; j<=n; j++)
fprintf(out, "%d ", a[i][j]);
fprintf(out, "\n");
}
return 0;
}
void rf()
{
int i, j, k;
for(k=1; k<=n; k++)
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
if((i!=k) && (j!=k) && (i!=j) && (a[i][k]!=0) && (a[k][j]!=0))
if(a[i][k]+a[k][j]<a[i][j])
a[i][j] = a[i][k]+a[k][j];
}