Задачи
Жесть
Жесть
Дам массив из N чисел. Нужно уметь обрабатывать 3 типа запросов:
get(L, R, x) — сказать, сколько элементов отрезка массива [L..R] не меньше x.
set(L, R, x) — присвоить всем элементам массива на отрезке [L..R] значение x.
reverse(L, R) — перевернуть отрезок массива [L..R].
Входные данные
Число N (1 ≤ N ≤ 10^5) и массив из N чисел. Далее число запросов M (1 ≤ M ≤ 10^5) и M запросов. Формат описания запросов предлагается понять из примера. Для всех отрезков верно 1 ≤ L ≤ R ≤ N. Исходные числа в массиве и числаx в запросах — целые от 0 до 10^9.
Выходные данные
Для каждого запроса типа get нужно вывести ответ.
Пример
Входные данные #1
5 1 2 3 4 5 6 get 1 5 3 set 2 4 2 get 1 5 3 reverse 1 2 get 2 5 2 get 1 1 2
Выходные данные #1
3 1 3 1