Pagini recente » Cod sursa (job #1184881) | Cod sursa (job #2485368) | Cod sursa (job #367461) | Profil StarGold2 | Cod sursa (job #3296092)
#include <vector>
#include <algorithm>
#include <fstream>
#include <iostream>
using namespace std;
//ifstream cin("fact.in");
//ofstream cout("fact.out");
int NrDeZerouri(int Numar) {
int nrDeZerouri = 0;
while (Numar >= 5) {
nrDeZerouri += Numar / 5;
Numar /= 5;
}
return nrDeZerouri;
}
int main() {
int p;
cin >> p;
if (p == 0) {
cout << 1;
return 0;
}
int stanga = 1, dreapta = 5 * p, rezultat = -1;
while (stanga <= dreapta) {
int mijloc = stanga + (dreapta - stanga) / 2;
int zerouri = NrDeZerouri(mijloc);
if (zerouri > p) {
dreapta = mijloc - 1;
}
else if (zerouri < p) {
stanga = mijloc + 1;
}
else {
rezultat = mijloc;
dreapta = mijloc - 1;
}
}
cout << rezultat;
return 0;
}