Cod sursa(job #370517)

Utilizator GotenAmza Catalin Goten Data 1 decembrie 2009 14:56:47
Problema Factorial Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.43 kb
#include<fstream.h>

long m,a,exp,p,r,l;

long fact(long x)
{
 long b=5,exp=0;
 while(x>=b)
 {
  exp+=x/b;
  b*=5; 
  }
 return exp;
 }

int main()
{
 ifstream f("fact.in");
 ofstream g("fact.out");
 f>>p;
 a=1;exp=0;
 while(exp<p)
  {
   a<<=1;
   exp=fact(a);
   }
 l=(a>>1)+1;r=a;
 while(l<=r)
 {
  m=l+((r-l)>>1);
  if(fact(m)>=p)r=m-1;
  else l=m+1;
  }
 while(fact(r)<p)r++;
 g<<r;
 return 0;
 }