from itertools import count def calc_positive_divisors(num: int) -> dict[int, int]: if num < 2: raise ValueError divisors = {} for divisor in count(2): if divisor ** 2 > num: if num != 1: divisors[num] = 1 break while num % divisor == 0 and num != 1: try: divisors[divisor] += 1 except KeyError: divisors[divisor] = 1 num //= divisor return divisors def main(): N = int(input()) match N: case 1: print(1, 1) case 2: print(1, 2) case num: a, b = 1, 1 divisors = calc_positive_divisors(num) for divisor, count_ in divisors.items(): a *= divisor ** (count_ // 2) b *= divisor ** (count_ % 2) print(a, b) if __name__ == "__main__": main()