Задачи
Запросы на квадрантах
Запросы на квадрантах
На плоскости расположено \textbf{n} точек. \textbf{i}-ая точка имеет координаты (\textbf{x_i}, \textbf{y_i}). Следует выполнить следующие запросы, которые задаются индексами граничных точек (\textbf{i} и \textbf{j}):
1) Отобразить все точки от точки \textbf{i} до точки \textbf{j} относительно оси \textbf{X}. Запрос представляется в виде “\textbf{X i j}”
2) Отобразить все точки от точки \textbf{i} до точки \textbf{j} относительно оси \textbf{Y}. Запрос представляется в виде “\textbf{Y i j}”
3) Вычислить, сколько точек от \textbf{i} до \textbf{j} лежит в каждом из \textbf{4} квадрантов. Запрос представляется в виде “\textbf{C i j}”
\InputFile
Первая строка содержит количество точек \textbf{n} (\textbf{1} ≤ \textbf{n }≤ \textbf{100000}). Далее следует \textbf{n} строк. \textbf{i}-ая строка содержит \textbf{x_i} и \textbf{y_i}, разделенных пробелом. Следующая строка содержит количество запросов \textbf{q} (\textbf{1} ≤ \textbf{q} ≤ \textbf{1000000}). Каждая из следующих \textbf{q} строк содержит один запрос одного из выше приведенного вида. Все индексы начинаются с \textbf{1}. Ни одна из точек не лежит ни на оси\textbf{ X}, ни на оси \textbf{Y}. Координаты всех точек (\textbf{x_i}, \textbf{y_i}) являются \textbf{32}-битовыми знаковыми целыми числами.
\OutputFile
Для каждого запроса вида “\textbf{C i j}” (\textbf{1} ≤ \textbf{i} ≤ \textbf{j} ≤ \textbf{n}) следует вывести одну строку, содержащую \textbf{4} целых числа: количество точек с индексами в промежутке \[\textbf{i}..\textbf{j}\], лежащих в \textbf{1}-ом, \textbf{2}-ом, \textbf{3}-ем и \textbf{4}-ом квадрантах соответственно.
Входные данные #1
4 1 1 -1 1 -1 -1 1 -1 5 C 1 4 X 2 4 C 3 4 Y 1 2 C 1 3
Выходные данные #1
1 1 1 1 1 1 0 0 0 2 0 1