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

Задача . A. Игровой лабиринт Неко


NEKO#ΦωΦ только что купила новую игру на свой компьютер!

Главный пазл этой игры это прямоугольный лабиринт \(2 \times n\). Неко должна провести Некомими девочку из клетки \((1, 1)\) в клетку \((2, n)\), тем самым выбравшись из лабиринта. Девочка может переходить только между клетками, соседними по стороне.

Однако, в некоторые моменты игры, некоторые клетки меняют своё состояние: или из земли в лаву (которая не позволяет проходить через клетку), или наоборот (что делает клетку проходимой вновь). Изначально ни в одной клетке лавы нет.

Спустя часы стриминга Неко выяснила, что есть всего \(q\) таких моментов, причём \(i\)-й из них переключает состояние клетки \((r_i, c_i)\) (с земли на лаву, или наоборот). Неко хочет узнать для каждого момента из этих \(q\), можно ли после него пройти из клетки \((1, 1)\) в \((2, n)\) не проходя через клетки с лавой.

Неко великий игрок и стример, но она всё ещё не справляется с пазлами и задачками, требующими большой силы мозга. Не могли бы вы ей помочь?

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

Первая строка содержит целые числа \(n\), \(q\) (\(2 \le n \le 10^5\), \(1 \le q \le 10^5\)).

Среди следующих \(q\) строк, \(i\)-я содержит целые числа \(r_i\), \(c_i\) (\(1 \le r_i \le 2\), \(1 \le c_i \le n\)), обозначающие координаты клетки, меняющейся в \(i\)-й момент.

Гарантируется, что клетки \((1, 1)\) и \((2, n)\) никогда не будут даны в списке запросов.

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

Для каждого момента выведите «Yes» или «No» в зависимости от того, можно ли пройти от клетки \((1, 1)\) до \((2, n)\). Всего вам нужно вывести ровно \(q\) ответов, по одному после каждого изменения.

Каждое слово можно выводить в любом регистре (нижнем, верхнем или смешанном).

Примечание

Разберём пример из условия:

  • После первого запроса девочка всё ещё может достичь цели, один из возможных путей выглядит как \((1,1) \to (1,2) \to (1,3) \to (1,4) \to (1,5) \to (2,5)\).
  • После второго запроса, добраться до цели невозможно, самая дальняя клетка, которой она может достичь, это \((1, 3)\).
  • После четвёртого запроса, клетка \((2, 3)\) уже не заблокирована, однако теперь заблокирован весь \(4\)-й столбец, так что достичь цели не получится.
  • После пятого запроса, проблемы со столбцом пропадают, так что она снова может добраться до цели.

Примеры
Входные данныеВыходные данные
1 5 5
2 3
1 4
2 4
2 3
1 4
Yes
No
No
No
Yes

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

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