Pagini recente » Cod sursa (job #2666759) | Cod sursa (job #3221541) | Cod sursa (job #2838413) | Cod sursa (job #2653312) | Cod sursa (job #1526050)
#include <fstream>
#include <climits>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long check(long long x)
{
long long nr0=0,h5=5;
while(h5<=x)
{
nr0=nr0+x/h5;
h5=h5*5;
}
return nr0;
}
int main()
{
long long p,st,dr,mid,sol,g;
int ok;
fin>>p;
if (p==0){fout<<"1\n";}
else
{
st=1;
dr=LONG_LONG_MAX;
ok=1;
while(st<=dr)
{
mid=(st+dr)/2;
g=check(mid);
if(g<p){st=mid+1;}
else
{
if(g==p){sol=mid;ok=0;}
dr=mid-1;}
}
if(ok){fout<<"-1\n";}
else{fout<<sol<<"\n";}
}
}