Pagini recente » Cod sursa (job #1632868) | Cod sursa (job #3266498) | Cod sursa (job #212375) | Cod sursa (job #966874) | Cod sursa (job #2076318)
#include <algorithm>
#include <fstream>
#include <iostream>
#include <vector>
using namespace std;
int NumZeroes(int n) {
int total = 0;
while (n) {
total += (n /= 5);
}
return total;
}
int main() {
ifstream cin("fact.in");
ofstream cout("fact.out");
int p;
cin >> p;
int left = 1, right = 5 * p + 5, best = -1;
while (left <= right) {
int middle = (left + right) / 2;
int num_zeroes = NumZeroes(middle);
if (num_zeroes >= p) {
if (num_zeroes == p) {
best = middle;
}
right = middle - 1;
} else {
left = middle + 1;
}
}
cout << best << "\n";
return 0;
}