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

Задача . E. Три коня


В стране коней живут три коня: один серый, другой белый, третий серо-белый. Кони очень забавные животные, поэтому им очень нравятся особенные карточки. На каждой такой карточке должно быть написано два целых числа, первое — вверху карточки, второе — внизу карточки. Обозначим карточку, на которой сверху написано число a, а снизу написано число b как (a, b).

Каждый из трех коней умеет рисовать особенные карточки. Если серому коню показать карточку (a, b), он может нарисовать новую карточку (a + 1, b + 1). Если белому коню показать карточку (a, b) , такую что a и b четные числа, он может нарисовать новую карточку . Если серо-белому коню показать две карточки (a, b) и (b, c), то он может нарисовать новую карточку (a, c).

Поликарп очень хочет получить n особенных карточек (1, a1), (1, a2), ..., (1, an). Для этого Поликарп собирается в страну коней. Он может взять с собой в страну коней ровно одну карточку (x, y), такую что 1 ≤ x < y ≤ m. Сколькими способами он может выбрать эту карточку, чтобы в результате некоторых действий в стране коней он смог получить требуемые карточки?

Поликарп может получать карточки только от коней в результате действий описанных выше. Кроме требуемых карточек, Поликарпу разрешается получить некоторые дополнительные карточки.

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

В первой строке записаны два целых числа n, m (1 ≤ n ≤ 105, 2 ≤ m ≤ 109). Во второй строке записана последовательность целых чисел a1, a2, ..., an (2 ≤ ai ≤ 109). Обратите внимание, числа в последовательности могут повторяться.

Числа в строках разделяются одиночными пробелами.

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

Выведите единственное целое число — ответ на задачу.

Пожалуйста, не используйте спецификатор %lld для чтения или записи 64-х битовых чисел на C++. Рекомендуется использовать потоки cin, cout или спецификатор %I64d.


Примеры
Входные данныеВыходные данные
1 1 6
2
11
2 1 6
7
14
3 2 10
13 7
36

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

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