Cod sursa(job #583369)

Utilizator ELHoriaHoria Cretescu ELHoria Data 19 aprilie 2011 20:04:12
Problema Factorial Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <cstdio>
#define ll long long

ll zero(ll c)
{ll p=0;
while(c)  p+=c/5  , c/=5;
return p;
}

ll  p,a ,b ,c, fn , i ;
bool ok;

int main()
{
	freopen("fact.in","r",stdin);
	freopen("fact.out","w",stdout);
	scanf("%d",&p);
	a=1, b=5*p , c=(a+b)/2 , c=c-c%5;  
 while(a<=c && c<=b && a<=b && !ok)  
  {  
  fn=zero(c); 
  if(fn==p)  ok=1 , i=c;  
  else 
	if(fn<p)  
   a=c+1;  
  else  
   b=c-1;  
  c=(a+b)/2;  
  c-=c%5;  
  }  
  printf("%lld",i-i%5);
	return 0;
}