Pagini recente » Cod sursa (job #935593) | Cod sursa (job #2151918) | Cod sursa (job #794951) | Cod sursa (job #429636) | Cod sursa (job #247911)
Cod sursa(job #247911)
#include<stdio.h>
long long search(int);
int main ()
{
long long p,x;
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%d",&p);
x=search(p);
if (x==1&&p!=0)
printf("-1");
else
printf("%lld\n",search(p));
return 0;
}
bool ver(long long x,int p)
{
long long i,nr=0;
for (i=5;i<=x;i*=5)
{
nr+=x/i;
}
return nr>=p?1:0;
}
long long search(int p)
{
long long rez=0,i;
for (i=((long long)1)<<60;i;i>>=1)
{
rez+=i;
if (ver(rez ,p))
rez-=i;
}
return rez+1;
}