Cod sursa(job #354734)

Utilizator dushmiMihai-Alexandru Dusmanu dushmi Data 9 octombrie 2009 12:06:45
Problema Factorial Scor 100
Compilator cpp Status done
Runda cautb1 Marime 0.43 kb
#include<cstdio>
int p;
int zero(int n)//numar de zerouri de la finalul lui n!
{
	int r=0;
	while(n)
	{
		r+= n/5;
		n/=5;
	}
	return r;
}
int caut(int p)
{
	int i,pas=(1<<30);
	for(i=0;pas;pas>>=1)
		if(zero(i+pas)<=p-1)
			i+=pas;
	if(zero(i+1)!=p)
		return -1;
	return i+1;
}
int main()
{
	freopen("fact.in","r",stdin);
	freopen("fact.out","w",stdout);
	scanf("%d",&p);
	printf("%d",caut(p));
	return 0;
}