eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Сведение последовательности

Сведение последовательности

Задана последовательность, состоящая из неотрицательных целых чисел. За один ход разрешается выбрать любые два соседних положительных числа и уменьшить их оба на 1. Последовательность называется хорошей, если нельзя совершить ни одного хода.

Вычислить количество хороших последовательностей, которое можно получить из заданной. Ответ может быть большим, поэтому его следует вывести по модулю 109 + 7.

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

Первая строка содержит длину последовательности n (1n105). Вторая строка содержит n неотрицательных целых чисел: начальную последовательность. Каждый элемент последовательности не превышает 300.

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

Вывести количество различных хороших последовательностей по модулю 109 + 7.

Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
2
4 2
Выходные данные #1
1
Входные данные #2
3
1 2 3
Выходные данные #2
2
Источник 2013 Петрозаводск, Moscow SU ST + NNSU Contest, День 2, Август 24, Задача C