logo AlgoBeat OnlineJudge
登录 注册

#214069. [LNCPC 2025] 前后缀石子博弈

内存限制:512 MiB 时间限制:2000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

Z 形管道猫邀请我们的老朋友 Alice 和 Bob 来玩他们俩最喜欢的取石子博弈游戏啦……这次是基于前后缀的取石子规则和初始局面生成规则。


在一局游戏中,局面由一行 堆石子构成,从前往后是从第 堆到第 堆。Alice 和 Bob 两人轮流取石子。Alice 先取。

在一轮取石子中,本轮操作的玩家首先选择两个非负整数 ,然后从前 个有石子的堆中每堆各取走 颗石子,并且从后 个有石子的堆中每堆各取走 颗石子,但是在同一轮同一堆中最多只能取走 颗石子。

最先在其的一个操作轮中取走 颗石子的玩家输掉本局游戏,另一个玩家胜利。

Alice 和 Bob 将玩 局游戏。记 表示在第 局游戏的初始局面中第 堆的石子数。给定两个非负整数 和第 局游戏的初始局面

局游戏的初始局面的生成规则是:首先基于第 局游戏的初始局面,然后对前 堆的石子数取该部分的后缀和,并且对后 堆的石子数取该部分的前缀和,其余部分保持不变。
更正式地,

Alice 和 Bob 都将采用最优策略。请您判断在这 局游戏中每一局的胜者。

输入格式

每个测试点包含多组测试数据。第一行给定一个整数 ,表示测试数据组数。

对于每组测试数据:
第一行给定四个整数 ,分别表示总游戏局数,初始局面的总石子堆数和生成初始局面的两个非负整数。
第二行给定 个整数 ,其中第 个整数 表示在第 局游戏的初始局面中第 堆的石子数。

保证在每个测试点中所有测试数据的 的总和不超过 的总和不超过

输出格式

对于每组测试数据,输出共 行,每行一个字符串。对于其中第 行,若第 局游戏将是 Alice 胜利,则输出 Alice;否则(第 局游戏将是 Bob 胜利),输出 Bob

样例

样例输入 1

2
3 7 3 2
1 3 1 2 1 2 2
2 6 0 6
7 3 8 3 5 10

样例输出 1

Alice
Alice
Bob
Alice
Alice

数据范围与提示

对于样例的第一组测试数据:
局游戏的初始局面为
下面是 Alice 和 Bob 可能的博弈过程:

  1. Alice 选择 ,取走 颗石子,局面变为 ,即(仅保留有石子的堆)
  2. Bob 选择 ,取走 颗石子,局面变为
  3. Alice 选择 ,取走 颗石子,此时局面中所有堆都没有石子。
  4. Bob 选择 ,取走 颗石子。Bob 输掉本局游戏,Alice 胜利。

局游戏的初始局面为
局游戏的初始局面为

对于样例的第二组测试数据,第 局游戏的初始局面为

本题的输入输出量较大,请注意所使用的输入输出方式。

最后 Alice 和 Bob 玩吐了,希望他们俩以后别再玩取石子博弈游戏了……