Олимпиадный тренинг

Задача . B. Делители двух целых чисел


Недавно вы получили два положительных целых числа \(x\) и \(y\). Вы забыли их, но вы запомнили перемешанный список, содержащий все делители \(x\) (включая \(1\) и \(x\)) и все делители \(y\) (включая \(1\) и \(y\)). Если \(d\) является делителем сразу обоих чисел \(x\) и \(y\), то в списке находятся два вхождения \(d\).

Например, если \(x=4\), а \(y=6\), то заданным списком может быть любая перестановка списка \([1, 2, 4, 1, 2, 3, 6]\). Некоторые примеры возможных списков: \([1, 1, 2, 4, 6, 3, 2]\), \([4, 6, 1, 1, 2, 3, 2]\) или \([1, 6, 3, 2, 4, 1, 2]\).

Ваша задача — восстановить подходящие положительные целые числа \(x\) и \(y\), которые формируют заданный список делителей (возможно в другом порядке).

Гарантируется, что ответ существует, то есть заданный список делителей соответствует каким-то положительным целым числам \(x\) и \(y\).

Входные данные

Первая строка входных данных содержит одно целое число \(n\) (\(2 \le n \le 128\)) — количество делителей \(x\) и \(y\).

Вторая строка входных данных содержит \(n\) целых чисел \(d_1, d_2, \dots, d_n\) (\(1 \le d_i \le 10^4\)), где \(d_i\) является либо делителем \(x\), либо делителем \(y\). Если число является делителем сразу обоих чисел \(x\) и \(y\), то в списке находятся две его копии.

Выходные данные

Выведите два положительных целых числа \(x\) и \(y\) — такие числа, что объединенные списки их делителей являются перестановкой заданного списка целых чисел. Гарантируется, что ответ существует.


Примеры
Входные данныеВыходные данные
1 10
10 2 8 1 2 4 1 20 4 5
20 8

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя