#B. 【USTC新生赛2025】B. 对战

    Type: Default 1000ms 1024MiB

【USTC新生赛2025】B. 对战

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

本题 Python 时间限制 6s。

题目描述

Alice 和 Bob 正在玩一种对战游戏。初始时,双方分别有 nnmm 个士兵。双方轮流行动,Alice 先行动。每次行动中,行动一方可以命令每名己方士兵执行一次操作,操作为以下三种之一:

  • 消灭对方的一名无护盾士兵。
  • 给己方的一名士兵加护盾,护盾仅在下一次行动有效。
  • 什么也不做。

同一次行动中,士兵不能同时作为护盾的施加者与接受者,即:给自己加护盾、两名士兵互加护盾、三名士兵互加护盾等等都是不允许的。

全军覆没的一方判负,判定是否存在必胜策略。

输入格式

多组数据

首先输入一行,包含一个整数 TT1T1051\le T\le 10^5),表示测试数据组数。

之后输入 TT 行,每行两个整数 n,mn,m,用空格隔开,满足 1n,m10181\le n,m\le 10^{18},分别表示 Alice 与 Bob 的初始兵力。

输出格式

输出 TT 行,表示每组测试数据的结果。若先手存在必胜策略,输出Alice,若后手存在必胜策略,输出Bob,若双方均不存在必胜策略,输出Kruskal

样例 #1

样例输入 #1

2
6 10
7 10

样例输出 #1

Bob
Alice

提示

以样例中的第一组测试为例,一个可能的对战过程如下:

第一次行动,Alice 命令所有士兵进攻。下一次行动开始之前,Alice 剩余 6 名无盾士兵,Bob 剩余 4 名士兵。

第二次行动,Bob 命令 2 名士兵进攻,2 名士兵给进攻士兵加盾。下一次行动开始之前,Alice 剩余 4 名士兵,Bob 剩余 2 名无盾士兵,2 名有盾士兵。

第三次行动,Alice 命令 2 名士兵进攻,2 名士兵给进攻士兵加盾。下一次行动开始之前,Alice 剩余 2 名无盾士兵,2名有盾士兵,Bob 剩余 2 名士兵。

第四次行动,Bob 命令 1 名士兵进攻,1 名士兵给进攻士兵加盾。下一次行动开始之前,Alice 剩余3名士兵,Bob 剩余 1 名无盾士兵,1 名有盾士兵。

第五次行动,Alice 命令 1 名士兵进攻,1 名士兵给进攻士兵加盾,1 名士兵闲置。下一次行动开始之前,Alice 剩余 2 名无盾士兵,1 名有盾士兵,Bob 剩余 1 名士兵。

第六次行动,Bob 命令 1 名士兵进攻。下一次行动开始之前,Alice 剩余 2 名士兵,Bob 剩余 1 名无盾士兵。

第七次行动,Alice 命令 1 名士兵进攻,1 名士兵闲置。Bob 全军覆没,游戏结束,Alice 获胜。

可证明对于第一组测试,Bob 事实上存在必胜策略。

2025 新生赛

Not Attended
Status
Done
Rule
ACM/ICPC
Problem
8
Start at
2025-10-12 9:00
End at
2025-10-12 13:00
Duration
4 hour(s)
Host
Partic.
68