| Codeforces Round 1089 (Div. 2) |
|---|
| Закончено |
Для массива $$$b$$$ длины $$$m$$$ определим $$$f(b)$$$ следующим образом:
Вам дана перестановка$$$^{\text{†}}$$$ $$$p$$$ длины $$$n$$$. Требуется ответить на $$$q$$$ запросов, каждый из которых содержит два целых числа $$$l$$$ и $$$r$$$ ($$$1 \le l \le r \le n$$$). Для каждого запроса вычислите $$$f([p_l,p_{l+1},\ldots,p_{r}])$$$.
$$$^{\text{∗}}$$$Количество инверсий массива $$$a$$$ длины $$$n$$$ определяется как количество пар целых чисел $$$(i,j)$$$, таких, что $$$1 \le i \lt j \le n$$$ и $$$a_i \gt a_j$$$.
$$$^{\text{†}}$$$Перестановкой длины $$$n$$$ является массив, состоящий из $$$n$$$ различных целых чисел от $$$1$$$ до $$$n$$$ в произвольном порядке. Например, $$$[2,3,1,5,4]$$$ — перестановка, но $$$[1,2,2]$$$ не перестановка ($$$2$$$ встречается в массиве дважды) и $$$[1,3,4]$$$ тоже не перестановка ($$$n=3$$$, но в массиве встречается $$$4$$$).
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка каждого набора входных данных содержит два целых числа $$$n$$$ и $$$q$$$ ($$$1 \le n,q \le 10^6$$$) — длину $$$p$$$ и количество запросов соответственно.
Вторая строка содержит $$$n$$$ различных целых чисел $$$p_1,p_2,\ldots,p_n$$$ ($$$1 \le p_i \le n$$$), задающих перестановку $$$p$$$.
Каждая из следующих $$$q$$$ строк содержит два целых числа $$$l$$$ и $$$r$$$ ($$$1 \le l \le r \le n$$$), задающих запрос.
Гарантируется, что сумма $$$n$$$ и сумма $$$q$$$ по всем наборам входных данных не превосходят $$$10^6$$$.
Для каждого набора входных данных выведите $$$q$$$ целых чисел, где $$$i$$$-е число обозначает ответ на $$$i$$$-й запрос.
42 21 21 11 22 12 11 25 21 2 3 4 51 42 510 67 10 5 2 8 3 6 4 9 11 61 106 95 102 86 7
001221131211130
В первом наборе входных данных:
В четвёртом наборе входных данных:
| Название |
|---|


