Pagini recente » Cod sursa (job #374500) | Cod sursa (job #2333207) | Cod sursa (job #365386) | Cod sursa (job #2242982) | Cod sursa (job #2970294)
#include <fstream>
using namespace std;
string file = "fact";
ifstream fin(file + ".in");
ofstream fout(file + ".out");
long long f5[20];
void f()
{
f5[0] = 1;
for (long long i = 1; i < 20; i++)
{
f5[i] = 5 * f5[i - 1];
}
}
long long nrzero(long long x)
{
long long cnt(0);
for (long long i = 1; x / f5[i]; i++)
{
cnt += x / f5[i];
}
return cnt;
}
int main()
{
long long n;
fin >> n;
f();
long long st(1), dr(f5[19]);
while (st <= dr)
{
long long mid = (st + dr) / 2;
if (nrzero(mid) >= n)
{
dr = mid - 1;
}
else
{
st = mid + 1;
}
}
fout << (nrzero(dr+1) == n ? dr+1 : -1);
}