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

Подготовка соревнования

Подготовка соревнования

Однажды Арти попросили подготовить несколько соревнований по программированию. Поскольку он очень ленив, то он решил немного схитрить. Арти подготовил $n$ задач, а для $i$-й задачи подготовил $s_i$ условий. Теперь он хочет собрать конкурсы из этих заданий по следующим правилам: \begin{itemize} \item каждую задачу можно использовать в соревновании только один раз; \item соревнование должно содержать от $a$ до $b$ задач; \item два соревнования считаются разными, если имеется хотя бы одна задача, которая присутствует в одном соревновании, а не во втором, или если имеется хотя бы одна задача с разными формулировками в этих соревнованиях; \item важен только набор задач, а не их порядок. \end{itemize} Подсчитайте, сколько разных соревнований может подготовить Арти. Так как это число может быть очень большим, выведите его по модулю $10^9+7$. \InputFile Первая строка содержит $n$, $a$, $b~(1 \le a \le b \le n \le 10000$). Вторая строка содержит $n$ целых чисел $s_i$ ($1 \le s_i \le 100$). \OutputFile Выведите одну строку --- количество различных соревнований, которые Арти может подготовить по модулю $10^9 + 7$.
Лимит времени 2 секунды
Лимит использования памяти 128 MiB
Входные данные #1
2 1 2
3 4
Выходные данные #1
19