Pagini recente » Cod sursa (job #1000523) | Cod sursa (job #1064817) | Cod sursa (job #1859035) | Cod sursa (job #3162390) | Cod sursa (job #2609102)
#include <bits/stdc++.h>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
unsigned long long n, rez;
unsigned long long calc(unsigned long long);
int main()
{
f >> n;
if (!n)
g << 1, g.flush(), exit(0);
unsigned long long st = 1ll, dr = n * 5;
while (st <= dr)
{
unsigned long long mid = st + ((dr - st) >> 1);
unsigned long long ax = calc(mid);
if (n == ax)
g << mid - mid % 5, g.flush(), exit(0);
if (ax < n)
st = mid + 1;
else
dr = mid - 1;
}
g << -1;
return 0;
}
unsigned long long calc(unsigned long long x)
{
unsigned long long p = 5, r = 0;
while (p <= x)
r += x / p, p *= 5;
return r;
}