Alice和Bob在玩序列游戏,游戏规则如下:给一个长度为 的数组
,双方轮流操作。双方先约定一个数字
,表示先手选择了
。此后,每次操作,假设前一个人选择
,后一个人选择的
需要满足两个条件:
的二进制表示下,最多只能有1位是1。其中,
表示二进制下的异或操作,如
当一名玩家不能操作时则视为失败,Alice先手。如果两个人都以最优策略来进行游戏,请问最终谁能获胜。
除此之外,Alice和Bob想要玩多轮游戏,为了避免游戏太乏味,他们可能还会在原数组之后插入一些整数。
第一行输入两个整数
,表示初始的数组长度和操作次数。
第二行输入
个整数
,表示初始数组
。
接下来
行,每行输入两个整数
,表示一个操作:
如果
,表示他们往数组
的末尾添加一个整数
。
如果
,则表示他们约定了一个数字
并且开始游戏。其中
表示目前数组
的长度。你需要输出最终谁能获胜。
对于每个的输入,你都需要输出一行。如果在给定的
下Alice必胜,则输出"Alice",如果Bob必胜,则输出"Bob"。