eolymp
bolt
Try our new interface for solving problems
Məsələlər

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

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

Сегодня на уроке математики шестиклассник Петя изучил понятие наибольшего общего делителя. Петя тут же решил применить полученные знания на практике. Петя выписал на листке бумаги $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$. Если возможных ответов несколько, выведите любой из них.
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB
Giriş verilənləri #1
4 3
6 8 12 9
Çıxış verilənləri #1
3
6 12 9 
Giriş verilənləri #2
3 3
2 4 8
Çıxış verilənləri #2
-1
Mənbə 2011 XII Всероссийская командная олимпиада школьников по программированию, 20 ноября, Задача А