Pagini recente » Cod sursa (job #2276016) | Cod sursa (job #2616308) | Cod sursa (job #2841378) | Cod sursa (job #938135) | Cod sursa (job #3282967)
#include <bits/stdc++.h>
using namespace std;
const int VMIN = 0;
const int VMAX = 5e8;
int nr_zero(int n) {
int nr_0 = 0;
while (n >= 5) {
nr_0 += (n /= 5);
}
return nr_0;
}
int caut_bin(int p) {
int st = VMIN, dr = VMAX, rez = dr+1;
while (st <= dr) {
int m = (st + dr) / 2;
if(nr_zero(m) >= p) {
rez = m;
dr = m - 1;
} else {
st = m + 1;
}
}
return rez;
}
int main() {
ifstream in("fact.in");
ofstream out("fact.out");
int p;
in >> p;
if(p == 0) {
out << 1;
return 0;
}
int rez = caut_bin(p);
if(nr_zero(rez) == p) {
out << rez;
} else {
out << -1;
}
return 0;
}