Cod sursa(job #588171)

Utilizator mihai_bogdaannMihai Bogdan mihai_bogdaann Data 7 mai 2011 10:17:59
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<fstream.h>
#define max 4000000020
ifstream fin("factorial.in");
ofstream fout("factorial.out");
int P,sol;
long legendre(long long n)
{
	long paux=5,s=0;
	while(n/paux)
	{
		s+=n/paux;
		paux*=5;
	}
	return s;
}
long rezolva(long p,long long q)
{
	if(p>q)
		return -1;
	
		long mij=p/2+q/2;
		if(p%2&&q%2)mij++;
		long rez=legendre(mij);
		if(rez==P)
			return mij;
		if(rez>P)
				return rezolva(p,mij-1);
			else
				return rezolva(mij+1,q);
		
	
}
int main()
{
	fin>>P;
	sol=rezolva(1,4000000020);
	if(sol!=-1)
	{
		while(sol%5!=0)
			sol--;
	}
	fout<<sol;
}