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 ноября, Задача А