Ctrl K

Соседи с чётным выражением

Средняя
Рассмотрим массивы arr длины length, все элементы которых — целые числа от 1 до top. Назовём соседнюю пару (позиции i и i + 1) отмеченной, если число arr[i] · arr[i + 1] − arr[i] − arr[i + 1] чётное. Верните количество массивов, в которых отмеченных пар ровно links. Ответ может быть большим — верните его по модулю 10⁹ + 7.
Пример 1
length=2, top=3, links=1 → 1

Из пар чисел от 1 до 3 условию удовлетворяет только [2, 2]: 2 · 2 − 2 − 2 = 0, это чётно.

Пример 2
length=3, top=2, links=0 → 5

Подходят 5 массивов из 8: все, кроме [2, 2, 1], [1, 2, 2] и [2, 2, 2].

Пример 3
length=1, top=6, links=0 → 6

У массива из одного элемента нет соседних пар, подходит любое из 6 чисел.

Ограничения
  • 1 ≤ length ≤ 750
  • 0 ≤ links ≤ length − 1
  • 1 ≤ top ≤ 1000
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСамый длинный зеркальный кусок СредняяВсе правильные скобочные строки СредняяМеньше всего прыжков до конца СредняяСамая прибыльная серия дней СредняяДобраться до последней клетки Средняя
загружаем Python…
Вход
length=2, top=3, links=1
Ожидается
1

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 58 тестов на сервере, включая скрытые.