Pagini recente » Cod sursa (job #2784238) | Cod sursa (job #319953) | Cod sursa (job #2900364) | Cod sursa (job #1322849) | Cod sursa (job #2223157)
#include <stdio.h>
#include <stdlib.h>
#define MAX 1001
int v[100][100];
int main()
{
FILE*fin,*fout;
fin = fopen("royfloyd.in" ,"r");
fout = fopen("royfloyd.out" ,"w");
int n,i,j;
fscanf(fin, "%d" ,&n);
for(i=0;i<n;i++){
for(j=0;j<n;j++){
fscanf(fin, "%d" ,&v[i][j]);
if(v[i][j]==0 && i!=j) v[i][j]=MAX;
}
}
int k;
for(k=0;k<n;k++)
for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(v[i][j]>v[i][k]+v[k][j])
v[i][j]=v[i][k]+v[k][j];
for(i=0;i<n;i++){
for(j=0;j<n;j++)
fprintf(fout, "%d " ,v[i][j]);
fprintf(fout, "\n");
}
return 0;
}