#2104. 对角变换

对角变换

题目描述

给你两个由数字组成的矩形 aabb ,每个矩形有 nn 行和 mm 列。矩形中的所有值都是 001122

以下操作可执行任意次数:

  • 选取矩形中任意长、宽 2\geq 2 的子矩形。您可以选择整个矩阵作为子矩形。子矩形有四个角。取所选子矩形的任意一对对角,并将它们的值加 11 并对 33 取模。
  • 对于未选中的对角,将它们的值加 22 并对 33 取模。

注意,该操作只改变所选子矩形的角的值。

是否有可能通过任意次(可能为零)上述操作将矩阵 aa 转换为矩阵 bb ?

输入格式

第一行输入一个整数 tt。代表 tt 组询问。

接下来每组数据:

第一行输入两个整数 n,mn, m。代表矩阵的行数和列数。

接下来 nn 行每行输入 mm 个整数,第 ii 行的第 jj 个数表示 ai,ja_{i,j}

接下来 nn 行每行输入 mm 个整数,第 ii 行的第 jj 个数表示 bi,jb_{i,j}

数据保证所有询问的 n\sum n 以及 m\sum m 不超过 500500

输出格式

每组数据输出一行 YESNO,代表是否可能通过任意次操作将矩阵 aa 转换为矩阵 bb

样例 1 输入

7
3 3
000
000
000
111
111
111
4 4
0000
0000
0000
0000
2100
1200
0012
0021
4 4
1020
1200
1210
0000
0000
1200
2200
0000
3 3
012
012
012
010
111
011
8 8
00000000
00000000
00000000
00000000
00000000
00000000
00000000
10000000
00000000
01200000
02010000
00102000
00020100
00001020
00000210
10000000
2 7
0000000
0000000
2220111
0111222
2 7
0000000
0100010
2220111
1210202

样例 1 输出

YES
YES
YES
NO
YES
NO
YES

样例解释

第一个例子可以这么转换: image

在这里的每个操作中,框出的右上角和左下角的数字加2模3,而左上角和右下角的数字加1模3。

数据范围

  • 20%20\% 的数据满足,t=1t=12n,m52\leq n,m\leq 5,
  • 100%100\% 的数据满足,1t2501\leq t\leq 2502n,m5002 \leq n, m\leq 500, n,m500\sum n, \sum m \leq 500, 0ai,j,bi,j20 \leq a_{i, j}, b_{i, j} \leq 2