P15661 [ICPC 2025 Jakarta R] Grid Game 2×2
题目描述
有一个 $10^9 \times 10^9$ 的网格,行号从 $1$ 到 $10^9$,列号从 $1$ 到 $10^9$。记 $(r, c)$ 为第 $r$ 行第 $c$ 列的格子。
初始时,恰好有 $N$ 个格子是黑色的,其余为白色。第 $i$ 个黑格位于 $(R_i, C_i)$。
你的童年好友 Kita 和 Kami 将在这个网格上交替进行游戏,由 Kita 先手。游戏中的一轮操作如下:
- 选择一个黑格 $(r, c)$。
- 选择一个子集 $K \subseteq \{1, 2, \ldots, t\}$,其中 $t$ 是满足 $2^t \leq \min(r, c)$ 的最大整数。集合 $K$ 可以是空集。
- 对于每个 $k \in K$,切换**所有**满足 $0 \leq i < 2^k$,$0 \leq j < 2^k$ 且 $(i, j) \neq (0, 0)$ 的格子 $(r-i, c-j)$ 的颜色。切换颜色意味着将黑色变为白色,白色变为黑色。
- 切换格子 $(r, c)$ 的颜色。注意,切换后格子 $(r, c)$ 的颜色变为白色。
如果轮到某位玩家时无法进行操作(即不再有任何黑格),则该玩家输掉游戏,对手获胜。如果双方都采取最优策略,请确定谁会赢得游戏。
输入格式
第一行包含一个整数 $N$($1 \leq N \leq 200\,000$),表示黑格的数量。
接下来的 $N$ 行,每行包含两个整数 $R_i$ 和 $C_i$($1 \leq R_i, C_i \leq 10^9$),表示第 $i$ 个黑格的位置。给定的所有黑格互不相同。
输出格式
输出一行,如果先手玩家会赢,则输出 $\texttt{Kita}$,否则输出 $\texttt{Kami}$。
说明/提示
**样例 1 解释:** 先手玩家选择格子 $(2, 3)$ 和集合 $K = \{ 1 \}$,之后所有格子都变为白色。
**样例 2 解释:** 先手玩家选择格子 $(8, 8)$ 和一个空集 $K$,之后唯一的黑格变为白色。
**样例 3 解释:** 后手玩家总是可以镜像先手玩家的上一步操作。
翻译由 DeepSeek V3.2 完成