Автор: | Жюри ВКОШП-2009 | Ограничение времени: | 2 сек | |
Входной файл: | standing.in | Ограничение памяти: | 256 Мб | |
Выходной файл: | standing.out |
Олег — известный поклонник соревнований по программированию. Он знает всех участников всех соревнований за последние десять лет и может про любого участника сказать, сколько задач решила команда с его участием на любом соревновании. И еще Олег очень любит теорию чисел.
В таблице результатов соревнования по программированию команды упорядочены по убыванию количества решенных задач. Олег называет таблицу результатов \emph{красивой}, если для всех команд количество решенных ими задач равно нулю или является делителем количества задач на соревновании. Когда какая-нибудь команда сдает задачу, количество сданных задач у нее увеличивается на один. Никакая команда не может сдать две или более задач одновременно, также две команды не могут одновременно сдать задачу.
Глядя на красивую таблицу результатов, Олег заинтересовался: а сколько еще задач смогут суммарно сдать команды так, чтобы после каждой сданной задачи таблица результатов оставалась красивой? Помогите ему выяснить это.
Первая строка входного файла содержит два целых числа: n и m — количество команд и количество задач на соревновании, соответственно. Вторая строка содержит n целых чисел, упорядоченных по невозрастанию: для каждой команды задано, сколько задач она решила. Гарантируется, что все отличные от нуля числа являются делителями числа m.
Выведите в выходной файл одно число: максимальное количество задач, которое суммарно могут еще сдать команды так, чтобы после каждой сданной задачи таблица результатов оставалась красивой.
В приведенном примере команды на 4 и 5 месте могут сдать по одной задаче, команда на 6 месте — три, а команда на 7 месте — 4. Суммарно таким образом команды смогут сдать 9 задач.
1 ≤ n ≤ 100;
1 ≤ m ≤ 109;
№ | Входной файл (standing.in ) |
Выходной файл (standing.out ) |
---|---|---|
1 |
|
|