Pagini recente » Cod sursa (job #704807) | Cod sursa (job #2585232) | Cod sursa (job #1645340) | Cod sursa (job #3121753) | Cod sursa (job #3301077)
#include <fstream>
#include <iomanip>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
long long zeros(long long n) {
long long cnt = 0;
for (long long p = 5; p <= n; p *= 5)
cnt += n / p;
return cnt;
}
int cautarebinara(int P) {
long long st = 1, dr = 500000000, mijloc, cont = 0, rez = -1;
while (st <= dr) {
mijloc = (st + dr) / 2;
cont = zeros(mijloc);
if (cont == P) {
rez = mijloc;
dr = mijloc - 1;
} else if (cont < P)
st = mijloc + 1;
else if (cont > P)
dr = mijloc - 1;
}
return rez;
}
int main() {
long long n;
f >> n;
g << cautarebinara(n);
return 0;
}