Pagini recente » Cod sursa (job #2005495) | Cod sursa (job #1954129) | Cod sursa (job #695930) | Cod sursa (job #1605624) | Cod sursa (job #1977550)
#include <bits/stdc++.h>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
unsigned long p,st,dr=ULONG_MAX,m,nrz,nr;
unsigned long zero(unsigned long x)
{
nr=0;
while(x)
nr+=(x/5),x/=5;
return nr;
}
unsigned long caut_binar()
{
while(st<=dr)
{
m=(st+dr)/2;
nrz=zero(m);
if(nrz==p)
return m/5*5;
else
if(nrz>p)
dr=m-1;
else
st=m+1;
}
return -1;
}
int main()
{
f>>p;
if(p==0)
g<<1;
else
g<<caut_binar();
return 0;
}