#include <cmath>
#include <cstdio>
#include <cstdint>
uint64_t getZeros(uint32_t n) {
//unsigned limit = log(n) / log(5);
//uint64_t z = n * (0.2 * (1 - pow(0.2, limit)) / 0.8);
uint64_t z = 0;
for(uint32_t i = 5; i <= n; i*=5) {
z += n / i;
}
//printf("Zeroes(%u!) = %lu\n", n, z);
return z;
}
int main() {
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
unsigned p;
scanf("%u", &p);
if(p == 0) {
printf("1\n");
return 0;
}
uint32_t start = 5;
uint32_t end = 0xFFFFFFFF;
uint32_t middle;
uint64_t zeros;
while(true) {
middle = (start + end) / 2;
zeros = getZeros(middle);
if(zeros == p) break;
if(zeros > p) {
if(end == middle) break;
end = middle;
}
else {
if(start == middle) break;
start = middle;
}
}
if(zeros == p) printf("%lu\n", middle / 5LU * 5LU);
else printf("-1\n");
return 0;
}