Pagini recente » Cod sursa (job #1833541) | Cod sursa (job #2143672) | Cod sursa (job #3137692) | Cod sursa (job #217596) | Cod sursa (job #1614489)
#include <stdio.h>
FILE *in;
FILE *out;
int zero(int n) {
int k = 0;
while(n >= 5) {
k += n / 5;
n /= 5;
}
return k;
}
int cautare_binara(int l, int r, int p) {
int ans = 0;
while (l <= r) {
int mid = l + (r - l) / 2;
if (zero(mid) >= p) {
if (zero(mid) == p) {
ans = mid;
}
r = mid - 1;
} else {
l = mid + 1;
}
}
return ans;
}
int main() {
in = fopen("fact.in", "r");
out = fopen("fact.out", "w");
int p, i, nr = 1, sol;
fscanf(in, "%d", &p);
for (i = 1; i <= 9; i++, nr *= 10);
sol = cautare_binara(1, nr, p);
fprintf(out, "%d", sol);
return 0;
}