Məsələlər
Лыжные гонки
Лыжные гонки
\includegraphics{https://static.e-olymp.com/content/06/064055d654d2e12ba1e22802d116bf89bc2e2a71.jpg}
Международная федерация лыжного спорта постоянно работает в направлении повышения зрелищности лыжных гонок. За последние несколько лет было придумано и опробовано множество дисциплин -- спринтерские гонки, масстарты, гонки с переобуванием лыж и т.д. Большая часть из них уже была представлена на олимпиаде в Ванкувере. Неотъемлемым эффектом повышения зрелищности является увеличение контактной борьбы непосредственно на трассе, как это происходит в спринте и масстарте. Для таких гонок очень важен момент старта, в частности расположение спортсменов.
К олимпиаде в Сочи решено опробовать новую схему расположения спортсменов на стартовом поле. Как и прежде, лыжники располагаются в несколько колонн, выровненных по стартовой линии. Но теперь количество человек в каждой из колонн определяется регламентом соревнований. Кроме того, лыжники из одной страны не могут:
\begin{itemize}
\item Находиться в одной колонне.
\item Находиться в одном ряду, если между ними вся часть ряда занята другими лыжниками (или они находятся в соседних колоннах). Если хотя бы одно место свободно, они могут располагаться в одном ряду.
\end{itemize}
Федерация лыжного спорта просит вас написать программу, определяющую, сколькими способами можно расставить на старте \textbf{K} спортсменов одной страны?
\InputFile
В первой строке записаны целые числа \textbf{N} и \textbf{K} (\textbf{1} ≤ \textbf{N}, \textbf{K} ≤ \textbf{400}). Во второй строке записано \textbf{N} положительных чисел через пробел -- описание стартовых колонн. \textit{\textbf{i}}-ое число указывает количество человек в \textit{\textbf{i}}-ой колонне. Числа не превышают \textbf{1000000}.
\OutputFile
Необходимо вывести единственное число -- количество способов. Число вывести по модулю \textbf{10^9+7}.
Giriş verilənləri #1
3 3 2 1 3
Çıxış verilənləri #1
2