Pagini recente » Cod sursa (job #2363971) | Cod sursa (job #1865660) | Cod sursa (job #332746) | Cod sursa (job #342816) | Cod sursa (job #195763)
Cod sursa(job #195763)
#include <stdio.h>
long long nr(long long n)
{
long long n2,n5,i;
for (n2=0,i=2;i<=n;i*=2)
n2+=(n/i);
for (n5=0,i=5;i<=4000000000;i*=5)
n5+=(n/i);
if (n2<n5) return n2;
return n5;
}
int main()
{
long long ls,ld,p,n,s;
freopen("fact.in","rt",stdin);
freopen("fact.out","wt",stdout);
scanf("%lld",&p);
ls=s=1;
ld=999999999;
while (ls<=ld)
{
n=(ls+ld)/2;
if (nr(n)>=p)
{
s=n;
ld=n-1;
}
else
ls=n+1;
}
if (nr(s)!=p) printf("-1");
else printf("%lld",s);
return 0;}