Cod sursa(job #807381)

Utilizator emyll96Constantinescu Emil emyll96 Data 4 noiembrie 2012 17:44:38
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include<stdio.h>
long int P,m1,m2,mij,gasit=0,z;
FILE*A,*B;
long int cf(long int A)
	{
		long int B=A,nr=0;
		while(B>0)
		{
			nr=nr+B/5;
			B=B/5;
		}
		return nr;
	}
int main()
{
	A=fopen("fact.in","r");
	B=fopen("fact.out","w");
	fscanf(A,"%ld",&P);
	m1=1;m2=9*P;mij=(m1+m2)/2;
	while(gasit==0&&m1<m2)
	{
		z=cf(mij);
		if(z==P){gasit=1;fprintf(B,"%ld",mij-(mij%5));}
		else
		{
			if(z<P){m2=mij;mij=(m1+m2)/2-1;}
			else{m1=mij;mij=(m1+m2)/2+1;}
			
			
		}
	}
	if(gasit==0)fprintf(B,"-1");
	fclose(A);fclose(B);
}