Pagini recente » Istoria paginii runda/tema_asd/clasament | Cod sursa (job #1773871) | Cod sursa (job #2743294) | Cod sursa (job #2007699) | Cod sursa (job #2636637)
#include<fstream>
#include<iostream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int nr(long long a)
{
long long n = 0;
long long k = 5;
while (a / k != 0)
{
n += a / k;
k *= 5;
}
return n;
}
int main()
{
long long st = 1;
long long dr = 10000000000;
int p;
f >> p;
long long sol = -1;
while (st <= dr)
{
long long m = (st + dr) / 2;
long long r = nr(m);
if (r == p)
{
sol = m;
dr = m - 1;
}
else if (r > p)
{
dr = m - 1;
}
else
{
st = m + 1;
}
}
g << sol;
return 0;
}