Дан массив, состоящий из n целых чисел: a1, a2, ..., an. Вам необходимо быстро выполнять запросы двух типов:
- Присвоить всем элементам от l до r включительно значение x. После такого запроса значения элементов массива al, al + 1, ..., ar становятся равны x.
- Посчитать и вывести сумму
, где k не превосходит 5. Так как значение суммы может оказаться достаточно большим, нужно выводить остаток от его деления на 1000000007 (109 + 7).
Выходные данные
В ответ на каждый запрос на подсчет суммы выведите одно целое число — требуемую сумму по модулю 1000000007 (109 + 7).
| № | Входные данные | Выходные данные |
|
1
|
4 5
5 10 2 1
? 1 2 1
= 2 2 0
? 2 4 3
= 1 4 1
? 1 4 5
|
25
43
1300
|
|
2
|
3 1
1000000000 1000000000 1000000000
? 1 3 0
|
999999986
|