Олимпиадный тренинг

Задача . B. Пинг-Понг (упрощенная версия)


В этой задаче в каждый момент времени у Вас есть набор интервалов. Вам разрешено перейти от интервала (a, b) из набора к интервалу (c, d) из набора тогда и только тогда, когда c < a < d или c < b < d. Считается, что путь от интервала I1 к интервалу I2 существует, если есть последовательность переходов, начинающихся с I1, таких, что можно добраться до I2.

Ваша программа должна обрабатывать запросы двух следующих типов:

  1. «1 x y» (x < y) — добавьте новый интервал (x, y) в набор интервалов. Длина нового интервала гарантированно строго больше длин всех предыдущих интервалов.
  2. «2 a b» (a ≠ b) — ответьте на вопрос: есть ли путь от a-го (один-индексация) добавленного интервала до b-го (один-индексация) добавленного интервала?

Выполните все запросы. Считайте, что изначально в вашем наборе нет ни одного интервала.

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

Первая строка содержит целое число n (1 ≤ n ≤ 100), обозначающее количество запросов. Каждая из следующих строк содержит запрос в формате, описанном выше. Все числа во входных данных целые и не превосходят по модулю 109.

Гарантируется, что все запросы корректные.

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

Для каждого запроса второго типа выведите «YES» или «NO» в отдельной строке в зависимости от ответа на вопрос.


Примеры
Входные данныеВыходные данные
1 5
1 1 5
1 5 11
2 1 2
1 2 9
2 1 2
NO
YES

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя