Pagini recente » Cod sursa (job #933334) | Cod sursa (job #140170) | Cod sursa (job #2375866) | Cod sursa (job #236299) | Cod sursa (job #2832676)
#include <fstream>
#include <climits>
using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int lagrange(int x)
{
int ans = 0;
for (; x >= 5; x /= 5)
ans += x / 5;
return ans;
}
int main()
{
int p;
cin >> p;
int st = 1, dr = INT_MAX - 1, sol = -1, of;
while (st <= dr)
{
int med = ((st + dr) >> 1), val = lagrange(med);
if (val >= p)
{
sol = med;
of = val;
dr = med - 1;
}
else st = med + 1;
}
if (of == p)
cout << sol;
else
cout << -1;
}