D. Влюблино
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Изначально у вас пустое мультимножество отрезков. Вам нужно обработать $$$q$$$ операций двух типов:

  • $$$+$$$ $$$l$$$ $$$r$$$ — Добавить в мультимножество отрезок прямой $$$(l, r)$$$,
  • $$$-$$$ $$$l$$$ $$$r$$$ — Удалить из мультимножества ровно один отрезок прямой $$$(l, r)$$$. Гарантируется, что этот отрезок есть в мультимножестве.

После каждой операции нужно определить, существует ли пара отрезков из мультимножества, которая не пересекается. Пара отрезков $$$(l, r)$$$ и $$$(a, b)$$$ не пересекается, если не существует точки $$$x$$$, для которой $$$l \leq x \leq r$$$ и $$$a \leq x \leq b$$$.

Входные данные

Первая строка каждого теста содержит целое число $$$q$$$ ($$$1 \leq q \leq 10^5$$$) — количество операций.

Следующие $$$q$$$ строк описывают операции двух типов. Если это операция добавления, то она задается в формате $$$+$$$ $$$l$$$ $$$r$$$. Если это операций удаления, то она задается в формате $$$-$$$ $$$l$$$ $$$r$$$ ($$$1 \leq l \leq r \leq 10^9$$$).

Выходные данные

После каждой операции выведите «YES», если существует пара отрезков из мультимножества, которая не пересекается, и «NO» иначе.

Вы можете вывести ответ в любом регистре (верхнем или нижнем). Например, строки «yEs», «yes», «Yes» и «YES» будут распознаны как положительные. ответы.

Пример
Входные данные
12
+ 1 2
+ 3 4
+ 2 3
+ 2 2
+ 3 4
- 3 4
- 3 4
- 1 2
+ 3 4
- 2 2
- 2 3
- 3 4
Выходные данные
NO
YES
YES
YES
YES
YES
NO
NO
YES
NO
NO
NO
Примечание

В примере после второй, третьей, четвертой и пятой операций, существует пара отрезков $$$(1, 2)$$$ и $$$(3, 4)$$$, которая не пересекается.

Дальше мы удаляем ровно один отрезок $$$(3, 4)$$$, а у нас их к этому моменту было два. Поэтому после этой операции также существует пара непересекающихся отрезков.