У вас есть массив $$$a$$$ из $$$n$$$ элементов. Также есть $$$q$$$ изменений массива. Перед первым изменением и далее после каждого изменения вы бы хотели узнать следующее:
Какой подотрезок минимальной длины необходимо отсортировать по неубыванию, чтобы массив $$$a$$$ был полностью отсортирован по неубыванию?
Более формально, вы хотите выбрать подотрезок массива $$$(l, r)$$$ с минимальным значением $$$r - l + 1$$$. После этого вы отсортируете элементы $$$a_{l}, a_{l + 1}, \ldots, a_{r}$$$ и хотите, чтобы выполнялось условие $$$a_{i} \le a_{i + 1}$$$ для всех $$$1 \le i < n$$$. Если же массив уже отсортирован по неубыванию, то $$$l$$$ и $$$r$$$ стоит считать равными $$$-1$$$.
Обратите внимание, что нахождение таких $$$(l, r)$$$ никак не меняет массив. А сами изменения имеют вид: присвоить $$$a_{pos} = x$$$ для заданных $$$pos$$$ и $$$x$$$.
Каждый тест состоит из нескольких наборов входных данных. Первая строка содержит целое число $$$t$$$ ($$$1 \le t \le 10$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка каждого набора входных данных содержит одно целое число $$$n$$$ ($$$1 \le n \le 5 \cdot 10^{5}$$$).
Вторая строка каждого набора входных данных содержит $$$n$$$ целых чисел $$$a_{i}$$$ ($$$0 \le |a_{i}| \le 10^{9}$$$) — изначальные элементы массива $$$a$$$.
В третьей строке каждого набора входных данных дано число $$$q$$$ ($$$0 \le q \le 5 \cdot 10^{5}$$$) — количество изменений массива.
Следующие $$$q$$$ строк каждого набора входных данных содержат по два целых числа $$$pos_{i}$$$ ($$$1 \le pos_{i} \le n$$$) и $$$val_{i}$$$ ($$$0 \le |val_{i}| \le 10^{9}$$$) — это означает, что при $$$i$$$-м изменении $$$a_{pos_{i}}$$$ присваивается значение $$$val_{i}$$$.
Гарантируется, что сумма $$$n$$$ и сумма $$$q$$$ по всем наборам входных данных не превосходит $$$5 \cdot 10^{5}$$$.
Для каждого набора входных данных выведите $$$q + 1$$$ строку. В каждой строке должно быть по $$$2$$$ целых числа $$$l, r$$$ — границы минимального подотрезка, при сортировке которого массив $$$a$$$ станет полностью отсортирован. Если $$$a$$$ уже отсортирован, то выведите $$$l = -1$$$, $$$r = -1$$$.
252 2 3 4 532 14 11 151 2 3 4 591 42 35 23 11 15 14 13 12 1
-1 -1 1 2 1 4 3 4 -1 -1 1 3 1 3 1 5 1 5 2 5 2 5 2 5 2 5 -1 -1
Рассмотрим первый набор входных данных:
Красным цветом показаны отрезки, которые нужно отсортировать, чтобы весь массив был отсортирован по неубыванию.
Название |
---|