eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Запросы на квадрантах

Запросы на квадрантах

На плоскости расположено \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}-ом квадрантах соответственно.
Лимит времени 3 секунды
Лимит использования памяти 64 MiB
Входные данные #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
Источник Local Contest #1 Qafqaz University by Mahammad Valiyev