这是一个交互题。
Alice 和 Bob 在玩一个游戏,游戏使用一个二进制字符串 $s$ 和一个固定整数 $k$。初始时有一个空字符串 $t$。玩家轮流在 $t$ 的末尾添加一个字符('0' 或 '1'),Alice 先手。
交互会一直持续到恰好有 $k$ 个字符被添加到 $t$ 中。当且仅当最终的字符串 $t$ 包含 $s$ 作为连续子串时 Alice 获胜,否则 Bob 获胜。
你可以选择扮演 Alice 或 Bob。你的目标是在与裁判的游戏中获胜。
交互
每个测试运行包含多个测试用例。你应该首先读入一行整数 $T$($1 \le T \le 100$),表示测试用例的数量。
对于每个测试用例,你首先在一行中读入一个二进制字符串 $s$ 和一个整数 $k$($1 \le |s| \le k \le 100$),表示轮数和游戏参数。
然后,输出一个单词:如果你选择扮演 Alice,则输出 Alice;如果你选择扮演 Bob,则输出 Bob。
之后,游戏从空字符串开始。Alice 进行第一次操作。每当轮到你操作时,输出一个字符,是 0 或 1。每当轮到裁判操作时,读入一个字符,是 0 或 1。
当当前字符串长度达到 $k$ 时游戏结束。
每次输出操作后你必须刷新输出缓冲区。例如,在 C++ 中你可以使用 cout << endl; 或 cout.flush();。
如果你输出了无效的标记、在游戏结束后进行了操作、未刷新缓冲区或输掉了游戏,你将得到 Wrong Answer。
说明
下表展示了样例的一种可能交互。“Jury”列为裁判输出,“Contestant”列为选手输出,“Explanation”列为解释。
| Jury | Contestant | Explanation |
|---|---|---|
1 |
有一个测试用例。 | |
01 3 |
$s=\texttt{01}$,$k=3$。 | |
Alice |
选手选择扮演 Alice。 | |
0 |
Alice 追加了 0,此时 $t=\texttt{0}$。 |
|
0 |
Bob 追加了 0,此时 $t=\texttt{00}$。 |
|
1 |
Alice 追加了 1,此时 $t=\texttt{001}$。Alice 获胜,因为 $t$ 包含 01。 |