Cod sursa(job #340321)

Utilizator tamas_iuliaTamas Iulia tamas_iulia Data 14 august 2009 11:13:43
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <stdio.h>
#define ll long long
#define INF 1000000000000LL

ll p,rez;

ll zerouri(ll x){
  ll	put=5, r=0;
	while(x / put >0){
   	r += x/put;
      put*=5;
   }
  return r;
}

ll caut_bin(ll l,ll r){
	ll m,x,rez=-1;
   while(l<=r){
   	m=l+(r-l)/2;
      x = zerouri(m);
      if(x == p){ rez=m; r=m-1; }
      else
      if(x < p) l=m+1;
      else r=m-1;
   }
   return rez;
}

int main(){
	freopen("factorial.in","r",stdin);
   freopen("factorial.out","w",stdout);
   scanf("%lld",&p);

   rez=caut_bin(1,INF);

   printf("%lld\n",rez);
   fclose(stdin); fclose(stdout);
   return 0;
}