#P15712. 圆柱棋盘移豆子
圆柱棋盘移豆子
题目描述
有一个由 行 列组成的棋盘。这个棋盘是圆柱形的:最左侧和最右侧相连,因此第 列和第 列互为相邻列。
棋盘上的一些格子放有盘子,部分盘子上初始放有豆子。初始时,每个盘子中至多有一颗豆子;但游戏过程中,一个盘子中可以有任意多颗豆子。
Alice 和 Bob 在这个棋盘上轮流移动豆子,Alice 先手。每一回合,当前玩家可以选择任意一颗豆子。若这颗豆子当前位于 ,则可以按以下规则移动:
- 豆子只能移动到有盘子的格子;
- 这颗豆子不能移动到它之前曾经到过的格子。注意,所有豆子彼此可区分;
- 可以从 移动到下方一格 ,仅当 ;
- 可以从 移动到右侧一格:若 ,到 ;若 ,到 ;
- 可以从 移动到左侧一格:若 ,到 ;若 ,到 。
无法在自己回合移动任何豆子的玩家失败。
请判断双方都采取最优策略时,谁会获胜。
输入格式
第一行包含两个整数 。
接下来 行,每行包含一个长度为 的字符串,描述初始棋盘。第 行第 个字符表示格子 :
#表示该格子没有盘子;.表示该格子有空盘子;B表示该格子有盘子,且初始放有一颗豆子。
输入不保证三种字符都出现。
输出格式
如果 Alice 在双方最优策略下获胜,输出:
Alice
否则输出:
Bob
数据范围
- 。
样例 1
输入
2 3
B.#
#..
输出
Alice
解释
唯一的豆子初始位于 。Alice 将它移动到 。Bob 只能将它移动到 ,随后 Alice 将它移动到 ,Bob 无法继续移动,因此 Alice 获胜。
样例 2
输入
1 1
B
输出
Bob
样例 3
输入
1 3
B#.
输出
Alice