Cod sursa(job #144009)

Utilizator anna_bozianuBozianu Ana anna_bozianu Data 27 februarie 2008 01:48:54
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<stdio.h>
long int n,i8,i,j,k,cit,a[102][102];
int main()
{
	FILE *f,*g;f=fopen("royfloyd.in","r");g=fopen("royfloyd.out","w");
	fscanf(f,"%ld",n);
	i8=101000;
	for(i=1;i<=n;i++)
	 for(j=1;j<=n;j++)
	  { fscanf(f,"%ld",&cit);
	    if(cit)a[i][j]=cit;else a[i][j]=i8;
	  }
	for(k=1;k<=n;k++)
	 for(i=1;i<=n;i++)
	  for(j=1;j<=n;j++)
	   if(a[i][j]>a[i][k]+a[k][j])
	    a[i][j]=a[i][k]+a[k][j];
	for(i=1;i<=1;i++)
	 { for(j=1;j<=n;j++)
	   { a[i][j]=(a[i][j]==i8)?0:a[i][j];
	     fprintf(g,"%ld ",a[i][j]);
	   }
	   fprintf(g,"\n");
	 }
	fcloseall();return 0;
}