Codeforces Round 684 (Div. 1) |
---|
Закончено |
Рассмотрим таблицу $$$(10^9+1) \times (10^9+1)$$$. Строки пронумерованы целыми числами от $$$0$$$ до $$$10^9$$$, и столбцы пронумерованы целыми числами от $$$0$$$ до $$$10^9$$$. Обозначим за $$$(x, y)$$$ клетку, расположенную в строке $$$x$$$ в столбце $$$y$$$.
Давайте назовем клетку $$$(x, y)$$$ хорошей, если $$$x \& y = 0$$$, где $$$\&$$$ — это операция побитового И.
Давайте построим граф, вершинами которого будут все хорошие клетки и проведем ребра между всеми парами соседних по стороне хороших клеток. Можно доказать, что этот граф является деревом — связным графом без циклов. Давайте подвесим это дерево за вершину $$$(0, 0)$$$, таким образом мы получим корневое дерево с корнем $$$(0, 0)$$$.
Два игрока играют в игру. Изначально некоторые хорошие клетки черные, а остальные белые. Каждый игрок на своем ходе выбирает черную хорошую клетку и подмножество ее предков (возможно пустое) и инвертирует их цвета (с белого на черный и наоборот). Игрок, который не может сделать ход (потому что все хорошие клетки белые), проигрывает. Можно доказать, что эта игра конечна.
Изначально все клетки белые. Вам дано $$$m$$$ пар клеток. Для каждой пары клеток все клетки на простом пути между клетками в паре красятся в черный цвет. Обратите внимание, что эти цвета не инвертируются, а мы красим клетки в черный цвет.
Sohrab и Mashtali собираются сыграть в эту игру. Sohrab будет первым игроком, а Mashtali вторым.
Mashtali хочет победить и решил поступить нечестно. Он может сделать следующую операцию несколько раз перед тем как игра начнется: выбрать клетку и инвертировать цвета всех вершин на пути между ней и корнем дерева.
Mammad, который наблюдает за ними, задался вопросом: «какое минимальное количество операций должен сделать Mashtali, чтобы иметь выигрышную стратегию?».
Найдите ответ на этот вопрос для изначальной конфигурации цветов вершин дерева. Можно доказать, что хотя бы один способ поступить нечестно существует.
В первой строке находится единственное целое число $$$m$$$ ($$$1 \leq m \leq 10^5$$$).
Каждая из следующих $$$m$$$ строк содержит четыре целых числа $$$x_{1}$$$, $$$y_{1}$$$, $$$x_{2}$$$, $$$y_{2}$$$ ($$$0 \leq x_i, y_i \leq 10^9$$$, $$$x_i \& y_i = 0$$$). Вы должны покрасить все вершины на пути между $$$(x_1, y_1)$$$ и $$$(x_2, y_2)$$$ в черный цвет.
Выведите единственное целое число — минимальное количество нечестных операций, которое второй игрок может сделать чтобы победить.
1 7 0 0 7
1
3 1 2 3 4 3 4 1 2 2 1 3 4
3
2 0 1 0 8 1 0 8 0
0
В первом тесте вы можете сделать одну нечестную операцию с корнем дерева. После этого, второй игрок может победить, потому что он может использовать симметричную стратегию.
Во втором тесте вы можете сделать нечестные операции в клетками $$$(0, 2), (0, 0), (3, 4)$$$.
В третьем тесте второй игрок уже имеет выигрышную стратегию и ему не нужно делать никаких нечестных операций.
Название |
---|