Given the number *n*, find the smallest positive integer which has exactly *n* divisors. It is guaranteed that for the given *n* the answer will not exceed 10<sup class="upper-index">18</sup>.
The first line of the input contains integer *n* (1 ≤ *n* ≤ 1000).
def smallest_integer_with_n_divisors(n):
    primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] # List of prime numbers
    
    def get_divisors_count(num):
        divisors_count = 1
        for prime in primes:
            if prime * prime > num:
                return divisors_count * 2
            exponent = 1
            while num % prime == 0:
                num //= prime
                exponent += 1
            divisors_count *= exponent
            if num == 1:
                break
        if num > 1:
            divisors_count *= 2
        return divisors_count
    
    current_number = 1
    while True:
        if get_divisors_count(current_number) == n:
            return current_number
        current_number += 1

n = int(input().strip())

result = smallest_integer_with_n_divisors(n)
print(result)
