Unique XOR Path
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
我们有一个 行 列的网格。你需要在每个格子中填入一个 到 之间的整数,满足以下条件:
- 考虑从左上角格子出发,每次向右或向下移动到相邻格子,最终到达右下角格子的路径。这样的路径被称为好路径当且仅当:
- 路径经过的所有格子(包括起点和终点)中数字的按位异或()总和为
- 在所有可能的路径中,有且只有一条好路径,这条路径由字符串 表示:
- 是一个长度为 的字符串
- 对于每个 ():
- 如果 的第 个字符是
R
,表示第 步移动方向为右 - 如果 的第 个字符是
D
,表示第 步移动方向为下
- 如果 的第 个字符是
你需要判断是否存在满足条件的填数方案。
每个输入文件包含 个测试用例。
按位异或说明
非负整数 和 的按位异或 定义如下:
- 将 用二进制表示时:
- 第 位()为 当且仅当 和 的第 位有且只有一个为
- 否则为
例如:(二进制:)
一般情况下, 个非负整数 的按位异或定义为:
$$(\dots ((p_1 \oplus p_2) \oplus p_3) \oplus \dots \oplus p_k) $$可以证明这个结果与计算顺序无关。
输入格式
- 第一行:整数 表示测试用例数量
- 每个测试用例:
- 第一行:三个整数 , ,
- 第二行:字符串 表示唯一的好路径
输出格式
对于每个测试用例:
- 如果存在满足条件的填数方案,输出
Yes
- 否则输出
No
示例
4
2 2 1
RD
4 3 1
RDDDR
15 20 18
DDRRRRRRRDDDDRRDDRDRRRRDDRDRDDRRR
20 15 7
DRRDDDDDRDDDRRDDRRRDRRRDDDDDRRRDD
Yes
No
Yes
No
数据范围
- 是由 个字符组成的字符串,仅包含
R
和D