Pagini recente » Cod sursa (job #2190478) | Cod sursa (job #1199276) | Cod sursa (job #648813) | Cod sursa (job #1003715) | Cod sursa (job #2313205)
#include <fstream>
#include <iostream>
#include <algorithm>
using namespace std;
ifstream f("fact.in"); ///kruskal
ofstream g("fact.out");
int p, c, k;
int cb(int p) { /// cel mai mic nr nat n pt care n! are exact p cifre de 0
int s = 1, d = 1000000000, m, pos = -1, k5, c;
while (s <= d) {
m = s + (d - s) / 2;
c = 5, k5 = 0; while (c <= m) k5 += m / c, c *= 5;
if (k5 == p) pos = m, d = m - 1;
else if (k5 > p) d = m - 1;
else s = m + 1;
}
return pos;
}
int main()
{
f >> p;
g << cb(p);
return 0;
}