Pagini recente » Cod sursa (job #2424501) | Cod sursa (job #2689706) | Istoria paginii runda/oni_2010_ziua2 | Autentificare | Cod sursa (job #2338478)
# include <iostream>
# include <fstream>
# include <algorithm>
# include <cmath>
# include <cctype>
# include <cstring>
# include <queue>
# include <stack>
# include <unordered_map>
using namespace std;
ifstream fi ("fact.in");
ofstream fo ("fact.out");
long long p, rez = 0x3f3f3f3f, st, dr, mij;
long long legrande(long long numar) {
long long e = 0;
long long putere = 5;
while (putere <= numar) {
e += (long long)numar / putere;
putere *= 5;
}
return e;
}
int main ()
{
fi >> p;
st = 1;
dr = 1 << 30;
while (st <= dr) {
mij = (st + dr) >> 1;
if (legrande(mij) == p) {
rez = mij;
dr = mij - 1;
}
if (legrande(mij) < p)
st = mij + 1;
else
if (legrande(mij) > p)
dr = mij - 1;
}
if (rez != 0x3f3f3f3f)
fo << rez;
else
fo << -1;
return 0;
}