eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Наибольший общий делитель

Наибольший общий делитель

Сегодня на уроке математики шестиклассник Петя изучил понятие наибольшего общего делителя. Петя тут же решил применить полученные знания на практике. Петя выписал на листке бумаги $n$ чисел $a_1, a_2, ... , a_n$ --- номера домов, в которых живут его друзья. Теперь он хочет выбрать такое подмножество этих чисел, чтобы их наибольший общий делитель был равен его любимому числу $d$. Помогите Пете выбрать из выписанных чисел искомое подмножество. \InputFile Первая строка два целых числа $n$ и $d~(1 \le n \le 1000, 1 \le d \le 10^9)$. Вторая строка содержит $n$ целых чисел: $a_1, a_2, ... , a_n~(1 \le a_i \le 10^9)$. \OutputFile Если существует искомое подмножество, выведите на первой строке количество чисел $k$ в нем. На второй строке выведите числа, входящие в это подмножество. Если решения не существует, выведите число $-1$. Если возможных ответов несколько, выведите любой из них.
Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
4 3
6 8 12 9
Выходные данные #1
3
6 12 9 
Входные данные #2
3 3
2 4 8
Выходные данные #2
-1
Источник 2011 XII Всероссийская командная олимпиада школьников по программированию, 20 ноября, Задача А