Улюблена гра Марини Віталіївни#10128

Улюблена гра Марини Віталіївни

1 секунда
64 мегабайти
Середня

Тетріс — улюблена гра Марини Віталіївни. Ігрове поле складається з стовпців та необмеженої кількості рядків.

22.jpg

Коли фігура з'являється, гравець може повернути її на , чи градусів, а потім переміщати вліво або вправо, поки вона повністю залишається у межах поля. Потім фігура падає донизу, поки не досягне дна поля або іншої фігури. У цій версії тетрісу фігура повинна падати так, щоб усі її частини або торкалися дна поля, або лежали на інших фігурах знизу. Тобто після падіння частин під ними не повинно залишатися порожніх клітинок.

Наприклад, нехай поле має шість стовпців із початковими висотами (кількість вже зайнятих клітинок у кожному стовпці) 2, 1, 1, 1, 0 та . Фігура під номером 5 може впасти п'ятьма різними способами:

222.jpg

Вам задано початкові висоти всіх стовпців і номер фігури, що випадає на поле. Напишіть програму, яка визначає кількість різних способів падіння фігури, тобто кількість різних конфігурацій поля, які можна отримати, не порушуючи правила.

Вхідні дані

У першому рядку задано два числа та (1 \le C \le 100, 1 \le P \le 7) — кількість стовпців та номер фігури, що випадає.

У другому рядку задано чисел у діапазоні . Це початкові висоти стовпців.

Вихідні дані

Виведіть кількість можливих конфігурацій поля.

Приклади

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading

Приклад 3

Loading
Loading