Cod sursa(job #807365)

Utilizator emyll96Constantinescu Emil emyll96 Data 4 noiembrie 2012 17:29:20
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<stdio.h>
#include<iostream.h>
long int P,m1,m2,mij,gasit=0;
char a[500000020];
FILE*A,*B;
long int cf(long int A)
	{
		long int B=A,C=0,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)
	{
		if(cf(mij)==P){gasit=1;fprintf(B,"%ld",mij);}
		else
		{
			if(cf(mij)<P){m2=mij;mij=(m1+m2)/2-1;}
			else{m1=mij;mij=(m1+m2)/2+1;}
			if( m1+1==m2){gasit=1;fprintf(B,"-1");}
			
		}
	}
	fclose(A);fclose(B);
}