Cod sursa(job #799612)

Utilizator cristi_berceanuFMI - Cristi Berceanu cristi_berceanu Data 19 octombrie 2012 16:43:22
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include<cstdio>

long long zero(long long fact)
{
	long long exp=0,nr=5;
	while (nr<=fact)
		exp+=fact/nr,nr*=5;
	return exp;
}

int main()
{
	long long n,i,x,y,p;
	
	freopen("fact.in","r",stdin);
	freopen("fact.out","w",stdout);
	scanf("%lld",&p);
	x=0;y=(long long) 1<<35;
	while (x<=y)
	{
		long long z=(x+y)/2;
		if (zero(z)>=p)
			n=z,y=z-1; else
				x=z+1;
	}
if (zero(n)==p) 	
printf("%lld\n",n); else
	printf("-1\n");
return 0;
}