Pagini recente » Cod sursa (job #2551813) | Cod sursa (job #1329616) | Cod sursa (job #163171) | Cod sursa (job #560625) | Cod sursa (job #439393)
Cod sursa(job #439393)
#include <stdio.h>
int nr5(long long);
int main()
{
long long ls,ld,m,ax;
int p;
long long n;
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%lld",&p);
ls=1;ld=2000000000;
while (ls<=ld)
{
m= (ls+ld)/2;
ax= nr5 (m);
if (ax==p)
ls=ld+1;
else if (ax>p)
ld=m-1;
else
ls=m+1;
}
if (ax==p) n=m;
else n=-1;
while (n%5 && n!=-1) n--;
printf("%lld\n",n);
return 0;
}
int nr5(long long a)
{
int x=5;
int c=0;
while (x<=a)
{
c+= a/x;
x*=5;
}
return c;
}