#TP2003. 矩阵平移(进阶)

矩阵平移(进阶)

题目描述

小 S 和小 H 在家玩方块拼搭,两人分别搭好了一个 nnmm 列矩阵 aabb

善于观察的小 S 发现矩阵 aa 是可以通过平移转化成矩阵 bb 的,他通过向右和向下的移动,使得两个矩阵变成一样。

平移指的是矩阵整体向右和向下移动,使得两个矩阵能够相同。

例如:

  • 下移规则:对于 i=1, 2, , n i=1,\ 2,\ \dots,\ n ,让 $ a_{1,i},\ a_{2,i},\ \dots,\ a_{n-1,\ i},\ a_{n,i} $ 分别等于 a2,i, a3,i, , an,i, a1,i a_{2,i},\ a_{3,i},\ \dots,\ a_{n,i},\ a_{1,i}

  • 右移规则:对于 j=1, 2, , m j=1,\ 2,\ \dots,\ m ,让 aj,1, aj,2, , aj,m1, aj,m a_{j,1},\ a_{j,2},\ \dots,\ a_{j,m-1},\ a_{j,m} 分别等于 $ a_{j,\ 2},\ A_{j,\ 3},\ \dots,\ a_{j,m},\ a_{j,1} $。

小 S 为了考验爱好编程的你,现在这个问题希望由你来解决,他会给出 TTnnmm 列的矩阵 aabb ,问是否能够将 aa 通过平移变成 bb ,如果可以则输出 Yes ,反之输出 No

为了方便判断这两个矩阵,矩阵由字符组成,字符仅包含 #.

输入格式

输入第一行,一个整数 TT ,表示一共询问的次数;

接下去一共输入 TT 组数据,第一行两个整数 n,mn, m ,表示接下去两个矩阵都是 nnmm 列的,接下去输入 nnmm 列的一个字符矩阵。

样例

2
4 3
..#
...
.#.
...
#..
...
.#.
...
3 2
##
##
#.
..
#.
#.
Yes
No
2
4 5
#####
.#...
.##..
..##.
...##
#...#
#####
...#.
10 30
..........##########..........
..........####....###.....##..
.....##....##......##...#####.
....####...##..#####...##...##
...##..##..##......##..##....#
#.##....##....##...##..##.....
..##....##.##..#####...##...##
..###..###..............##.##.
.#..####..#..............###..
#..........##.................
................#..........##.
######....................####
....###.....##............####
.....##...#####......##....##.
.#####...##...##....####...##.
.....##..##....#...##..##..##.
##...##..##.....#.##....##....
.#####...##...##..##....##.##.
..........##.##...###..###....
...........###...#..####..#...
Yes
Yes

数据范围

2T82 \le T \le 8

2n,m302 \le n, m \le 30