Pagini recente » Cod sursa (job #511510) | Cod sursa (job #2447916) | Cod sursa (job #518233) | Cod sursa (job #1901983) | Cod sursa (job #2689453)
#include <iostream>
#include <fstream>
std::ifstream fin("fact.in");
std::ofstream fout("fact.out");
using namespace std;
unsigned long long factorial(unsigned long long x)
{
unsigned long long cnt=0;
for(unsigned long long i=5;i<=x;i*=5)
cnt += x/i;
return cnt;
}
int main()
{
unsigned long long N;
fin >> N;
if(N!=0)
{
unsigned long long m=0, st=1, dr=N*5, poz=-1;
while(st <= dr)
{
m = (st+dr)/2;
if(factorial(m)> N)
dr = m-1;
if(factorial(m)< N)
st=m+1;
else {
poz = m;
dr = m-1;
}
}
fout << poz;
}
else
fout << 1;
return 0;
}