Cod sursa(job #202508)

Utilizator neagu1000123Neagu Rares Florian neagu1000123 Data 9 august 2008 12:23:11
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <stdio.h>
#include <values.h>
#include <math.h>
long zerouri(long n)
{
 	 long zero=0;
 	 int i,max=0;
 	 for (i=1;i<=n;i++)
 	 {
	  	  if (pow(5,i)>n)
	  	  {
		  	  max=i-1;
		  	  break;
	     }
    }
    for (i=max;i>=1;i--)
    {
	  	  zero+=n/pow(5,i);
	  	  n=n/pow(5,i);
	 }
	 return zero;
}

long p,rez=0;
int binsearch(long a,long b)
{
 	 long c=(a+b)/2;
 	 if (zerouri(c)<p)
 	 {
	  	 return binsearch(a,c);
    } else
    if (zerouri(c)>p)
    {
	  	 return binsearch(c+1,b);
	 } else
	 rez=c;
}
int main()
{
 	 freopen("factorial.in","r",stdin);
 	 freopen("factorial.out","w",stdout);
	 scanf("%ld",&p);
	 long a=0,b=2000000000; 	 
	 long c=0;
	 binsearch(a,b);
	 printf("%ld",rez);
 	 return 0;
}