Pagini recente » Cod sursa (job #2264623) | Cod sursa (job #1276610) | Cod sursa (job #2195669) | Cod sursa (job #363243) | Cod sursa (job #2173101)
#include <stdio.h>
#include <limits.h>
int main(void)
{
unsigned s, mid, pos, r, n;
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
scanf("%u", &n);
for (mid = pos = (unsigned) INT_MAX+1; mid; mid >>= 1) {
r = 0;
s = 1;
do {
s *= 5;
r += (pos - mid) / s;
} while ((pos - mid) / s > 0);
if (r >= n) {
pos -= mid;
}
}
r = 0;
s = 1;
do {
s *= 5;
r += pos / s;
} while (pos / s > 0);
if (r == n) {
printf("%u", pos);
} else {
puts("-1");
}
return 0;
}