Codeforces Round 499 (Div. 1) |
---|
Закончено |
Космонавт Наташа полетела исследовать Марс. Она знала, что марсиане — очень бедные инопланетяне. Чтобы обеспечить лучшую жизнь для своих граждан, их император решил брать налог с каждого туриста, посетившего планету. Наташа — жительница Земли, поэтому, чтобы попасть на территорию Марса, ей пришлось заплатить налог.
На Марсе существуют $$$n$$$ номиналов банкнот: $$$i$$$-й номинал равен $$$a_i$$$. У Наташи есть бесконечное количество купюр каждого номинала.
На руке каждого марсианина находится $$$k$$$ пальцев, поэтому на Марсе используется система счисления с основанием $$$k$$$. Кроме того, марсиане считают цифру $$$d$$$ (в системе счисления с основанием $$$k$$$) божественной. В связи с этим, если последняя цифра в записи суммы налога Наташи в системе счисления с основанием $$$k$$$ будет $$$d$$$, марсиане будут счастливы. К сожалению, Наташа пока не знает божественную цифру марсиан.
Определите, при каких значениях $$$d$$$ Наташа сможет сделать марсиан счастливыми.
Наташа может использовать только свои банкноты. Марсиане ей не дают сдачу.
Первая строка содержит два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 100\,000$$$, $$$2 \le k \le 100\,000$$$) — количество номиналов банкнот и основание системы счисления на Марсе.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — номиналы банкнот на Марсе.
Все числа даны в десятичной системе счисления.
В первой строке выведите количество значений $$$d$$$, при которых Наташа сможет сделать марсиан счастливыми.
Во второй строке выведите все эти значения в возрастающем порядке.
Все числа выводите в десятичной системе счисления.
2 8
12 20
2
0 4
3 10
10 20 30
1
0
Рассмотрим первый тестовый пример. В нём используется восьмеричная система счисления.
Возьмём одну купюру номиналом $$$12$$$. В восьмеричной системе счисления это $$$14_8$$$. Последняя цифра — $$$4_8$$$.
Возьмём одну купюру номиналом $$$12$$$ и одну купюру номиналом $$$20$$$. Сумма — $$$32$$$. В восьмеричной системе счисления это $$$40_8$$$. Последняя цифра — $$$0_8$$$.
Возьмём две купюры номиналом $$$20$$$. Сумма — $$$40$$$. В восьмеричной системе счисления это $$$50_8$$$. Последняя цифра — $$$0_8$$$.
Никакую другую цифру, кроме $$$0_8$$$ и $$$4_8$$$, получить нельзя. Цифры $$$0_8$$$ и $$$4_8$$$ можно также получить и другими способами.
Во втором тестовом примере используется десятичная система счисления. Номиналы всех купюр заканчиваются нулём, поэтому Наташа может дать марсианам только сумму, десятичная запись которой тоже заканчивается нулём.
Название |
---|