Pagini recente » Cod sursa (job #1625635) | Cod sursa (job #1548968) | Cod sursa (job #1822314) | Cod sursa (job #511370) | Cod sursa (job #1723233)
#include <fstream>
#define ll long long
using namespace std;
ll countZeroes(ll n) {
ll fact = 5, nZero=0;
while (fact <= n) {
nZero += n / fact;
fact *= 5;
}
return nZero;
}
ll solve(ll p) {
if (p == 0)
return 1;
ll ans = -1, st = 0, dr = p * 5, mij;
while (st <= dr) {
mij = (st + dr) / 2;
int nZero = countZeroes(mij);
if (nZero == p)
ans = mij;
if (nZero >= p)
dr = mij - 1;
else
st = mij + 1;
}
return ans;
}
int main()
{
ifstream fin("fact.in");
ofstream fout("fact.out");
ll p;
fin >> p;
fout << solve(p);
return 0;
}