Pagini recente » Cod sursa (job #3349544) | Cod sursa (job #3348698) | Cod sursa (job #3327296) | Cod sursa (job #73849) | Cod sursa (job #3353503)
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long zerouri(long long n) {
long long nrzero = 0;
while (n != 0) {
n /= 5;
nrzero += n;
}
return nrzero;
}
int main() {
long long P;
fin >> P;
if (P == 0) {
fout << 1;
return 0;
}
long long st = 1;
long long dr = 5 * P;
long long rasp = -1;
while (dr >= st) {
long long suma = st + dr;
long long mijloc = suma / 2;
if (zerouri(mijloc) < P)
st = mijloc + 1;
else {
rasp = mijloc;
dr = mijloc - 1;
}
}
if (zerouri(rasp) == P)
fout << rasp;
else
fout << -1;
}