Pagini recente » Cod sursa (job #2327717) | Cod sursa (job #2880704) | Cod sursa (job #1105161) | Cod sursa (job #2637997) | Cod sursa (job #458659)
Cod sursa(job #458659)
#include<fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
unsigned long long li = 1;
unsigned long long ls = 1220703125 ;
unsigned long long v=0;
unsigned long long lm;
unsigned long long nrz(unsigned long long nr)
{
unsigned long long n = 0;
while(nr)
{
n+=nr/5;
nr/=5;
}
return n;
}
unsigned long long BS(unsigned long long n)
{
while(li<ls)
{
lm = (li+ls)/2;
v=nrz(lm);
if(v==n)
return lm;
else
if(v>n)
ls=lm-1;
else
li=lm+1;
}
return -1;
}
int main ()
{
unsigned long long nz;
in>>nz;
out<<BS(nz)<<'\n';
}