Pagini recente » Cod sursa (job #3205308) | Cod sursa (job #315371) | Cod sursa (job #2656196) | Cod sursa (job #2329362) | Cod sursa (job #2075477)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int p, rasp;
int zeroFinal(int n) {
int r = 0, exp = 5;
while (exp <= n) {
r += n / exp;
exp *= 5;
}
return r;
}
int cauta(const int s, const int d) {
int mij = (s+d)/2;
if(zeroFinal(mij) == p) return (mij-mij%5);
else {
if(mij == s) return -1;
else if(zeroFinal(mij) >= p) return cauta(s, mij-1);
else return cauta (mij+1, d);
}
}
int main()
{
in >> p;
if(p == 0) { out << 1; return 0; }
rasp = cauta(0, 80000003);
out << rasp << "\n";
return 0;
}