金州幼儿园的 Gamer Bellalabella 十分喜欢旋转水管小游戏,这类游戏的目标是通过旋转游戏中的 管道使得水流的输入口与输出口联通。
最近 Bellalabella 发现了一款特殊的旋转水管游戏,这款游戏中水管只包含 形水管与 形水管,并 且支持自定义游戏!Bellalabella 立即创造了 T 个属于自己的旋转水管游戏:
- 整个游戏构成一个 的矩形。
- 第一行仅包含一个位于第 列的水流输入口,水流自输入口向下流出。
- 游戏第二、三行有 列水管,第 行 列为 或者 表示水管的形状。
- 第四行仅包含一个位于第 列的水流输出口,水流输出口仅接受向下流出的水流。
以样例第一个游戏为例,初始状态如左图所示,经过旋转 的水管得到如右图所示 的状态即可让水流输入口输出口联通。
Bellalabella 想知道自己创造出的 T 个旋转水管游戏是否存在一个旋转方案使得输入口与输出口联通,然而 Bellalabella 的游戏中水管太多了,自己不能解决,于是 Bellalabella 将问题交给了正在旁观的你。
输入格式
第一行包含一个整数 ,表示水管游戏的个数。
每组数据包含三行输入,第一行包含三个整数 ,分别表示矩形的宽度、水流输入口的位置、水流输出口的位置。 第二、三行每行包含 个字符,每个字符为大写英文字母 和 之一,分别表示 形水管与 形 水管。 保证 。
输出格式
对于每组输入,如果可以通过旋转某些水管使得水流可以从规定位置流出,则输出 YES,否则输出 NO (大小写不敏感)。
样例
输入
3
3 1 3
ILL
LLI
1 1 1
I
I
3 1 3
IIL
LLI
输出
YES
YES
NO
思路
因为这里只是求是否能到, 没说需要旋转几步, 故不需要考虑判断当前是否需要旋转。直接让水管处于旋转与不旋转的叠加态。
划分出额外的一些点, 如果对应格子是 I 或者 - 第一类水管, 则横着跟竖着建边, 第二类水管也同理。建完边之后再DFS求连通块即可, 如果搜到终点则说明存在一种旋转方案到达。
对应的坐标偏移为:
0