e-olymp
Yarışlar

KBTU OPEN 2014 Spring

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

Однажды Арти попросили приготовить несколько соревнований по программированию. Так как он очень ленив, то решил немного сжульничать. Он приготовил n задач, для i-ой задачи он приготовил si условий. Теперь он хочет составить соревнования из этих задач, удовлетворяющих следующим правилам:

  • каждая задача в соревновании может быть использована только один раз;
  • соревнование должно содержать от a до b задач;
  • два соревнования считаются различными, если имеется задача которая присутствует в одном соревновании и отсутствует в другом, или если хотя бы одна задача имеет разные условия в этих соревнованиях;
  • считаются множества задач, а не их порядок следования в соревнованиях.

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

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

Первая строка содержит числа n, a, b (1abn10000). Вторая строка содержит n целых чисел si (1si100).

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

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

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB
Giriş verilənləri #1
2 1 2
3 4
Çıxış verilənləri #1
19
Mənbə 2014 KBTU Open, Весна Казахстан, Алма-Ата, 20 Апреля, Задача I