QOJ.ac

QOJ

時間限制: 4.0 s 記憶體限制: 512 MB 總分: 100 可 Hack ✓

#8311. 序列博弈

统计

Grammy 正在和她的室友 Alice 在一个包含 $n$ 个非负整数 $A_1, A_2, \dots, A_n$ 的序列 $A$ 上玩游戏。游戏规则如下:

  1. 游戏通过在序列上移动单个棋子进行,初始时棋子位于位置 $k$。
  2. Grammy 先手,两人轮流移动。
  3. 在棋子位于位置 $i$ 的任何一步中,当前玩家必须将棋子移动到下一个位置 $j$,满足 $j > i$ 且 $A_j$ 与 $A_i$ 在二进制表示下最多只有一位不同。
  4. 无法进行合法移动的玩家输掉游戏。

她们进行了多次游戏,且序列会被多次修改。Grammy 想让你判断在双方都采取最优策略的情况下,给定初始状态下谁会获胜。

输入格式

第一行包含两个整数 $n$ 和 $m$ ($1 \le n, m \le 200\,000$),分别表示序列的长度和操作次数。

第二行包含 $n$ 个整数 $A_1, A_2, \dots, A_n$ ($0 \le A_i \le 255$),表示序列 $A$。

接下来的 $m$ 行,每行包含两个整数 $op$ ($1 \le op \le 2$) 和 $k$,表示每次操作:

  • 当 $op = 1$ 时,表示对序列进行修改。Grammy 会在序列末尾追加一个整数 $k$ ($0 \le k \le 255$),使得序列变为 $A_1, A_2, \dots, A_{N+1}$,其中 $N$ 是修改前序列的当前长度。
  • 当 $op = 2$ 时,表示开始一局新游戏,棋子初始位于位置 $k$ ($1 \le k \le N$),其中 $N$ 是序列的当前长度。你需要预测该游戏的获胜者。

输出格式

对于每个 $op = 2$ 的操作,如果 Grammy 在双方最优策略下获胜,输出一行 "Grammy";如果 Alice 获胜,输出一行 "Alice"。

样例

样例输入 1

5 5
1 2 3 4 5
1 6
2 5
1 7
2 5
2 1

样例输出 1

Alice
Grammy
Alice

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.