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

Неубывающие подпоследовательности

Неубывающие подпоследовательности

Бесси недавно участвовала в конкурсе USACO и столкнулась со следующей задачей. Конечно, Бесси знает, как ее решить. А ты?

Рассмотрим последовательность A1, A2, ..., An длины n, состоящую только из целых чисел в диапазоне 1...k. Вам даются q (1q2 * 105) запросов вида [li, ri] (1lirin). Для каждого запроса вычислите количество неубывающих подпоследовательностей Ali, Ali+1,..., Ari по модулю 109 + 7.

Неубывающая подпоследовательность Al,..., Ar представляет собой такой набор индексов (j1, j2, ..., jx) что lj1 < j2 < ... < jxr и Aj1Aj2 ≤ ... ≤ Ajx. Обязательно учитывайте пустую подпоследовательность!

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

Первая строка содержит два целых числа n (1n5 * 104) и k (1k20). Вторая строка содержит n целых чисел A1, A2, ..., An. Третья строка содержит одно целое число q. Каждая из следующих q строк содержит по два целых числа li и ri.

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

Для каждого запроса [li, ri] следует вывести в отдельной строке количество неубывающих подпоследовательностей Ali, Ali+1,... , Ari по модулю 109 + 7.

Пример

Для первого запроса неубывающими подпоследовательностями являются (), (2) и (3). (2, 3) не является неубывающей подпоследовательностью, так как A2 > A3.

Для второго запроса неубывающими подпоследовательностями будут (), (4), (5) и (4, 5).

Ліміт часу 1 секунда
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
5 2
1 2 1 1 2
3
2 3
4 5
1 5
Вихідні дані #1
3
4
20
Джерело 2020 USACO Январь Платина