C. Игра с мультимножеством
ограничение по времени на тест
1.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

В этой задаче вам изначально дано пустое мультимножество. Вам нужно обработать два типа запросов:

  1. ADD $$$x$$$ — добавить элемент, равный $$$2^{x}$$$, в мультимножество;
  2. GET $$$w$$$ — сказать, возможно ли взять сумму некоторого подмножества текущего мультимножества и получить значение, равное $$$w$$$.
Входные данные

Первая строка содержит одно целое число $$$m$$$ ($$$1 \le m \le 10^5$$$) — количество запросов.

Затем следуют $$$m$$$ строк, каждая из которых содержит два целых числа $$$t_i$$$, $$$v_i$$$, обозначающих $$$i$$$-й запрос. Если $$$t_i = 1$$$, то $$$i$$$-й запрос — ADD $$$v_i$$$ ($$$0 \le v_i \le 29$$$). Если $$$t_i = 2$$$, то $$$i$$$-й запрос — GET $$$v_i$$$ ($$$0 \le v_i \le 10^9$$$).

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

Для каждого запроса GET выведите YES, если возможно выбрать подмножество с суммой, равной $$$w$$$, или NO, если это невозможно.

Примеры
Входные данные
5
1 0
1 0
1 0
2 3
2 4
Выходные данные
YES
NO
Входные данные
7
1 0
1 1
1 2
1 10
2 4
2 6
2 7
Выходные данные
YES
YES
YES