#aBC218C. [ABC218C] Shapes

[ABC218C] Shapes

AT_abc218_c [ABC218C] Shapes

题目描述

在一个二维网格上有两个图形 SSTT。网格由正方形格子组成。

SS 位于 NNNN 列的网格中,由所有 Si,jS_{i,j}# 的格子组成。
TT 也位于 NNNN 列的网格中,由所有 Ti,jT_{i,j}# 的格子组成。

请判断是否可以通过若干次 9090 度旋转和平移操作,使 SSTT 完全重合。

输入格式

输入以如下格式从标准输入读入。

NN
S1,1S1,2S1,NS_{1,1}S_{1,2}\ldots S_{1,N}
\vdots
SN,1SN,2SN,NS_{N,1}S_{N,2}\ldots S_{N,N}
T1,1T1,2T1,NT_{1,1}T_{1,2}\ldots T_{1,N}
\vdots
TN,1TN,2TN,NT_{N,1}T_{N,2}\ldots T_{N,N}

输出格式

如果可以通过若干次 9090 度旋转和平移操作使 SSTT 完全重合,输出 Yes,否则输出 No

输入输出样例 #1

输入 #1

5
.....
..#..
.###.
.....
.....
.....
.....
....#
...##
....#

输出 #1

Yes

输入输出样例 #2

输入 #2

5
#####
##..#
#..##
#####
.....
#####
#..##
##..#
#####
.....

输出 #2

No

输入输出样例 #3

输入 #3

4
#...
..#.
..#.
....
#...
#...
..#.
....

输出 #3

Yes

输入输出样例 #4

输入 #4

4
#...
.##.
..#.
....
##..
#...
..#.
....

输出 #4

No

说明/提示

限制条件

  • 1N2001 \leq N \leq 200
  • S,TS,T 仅由 #. 组成
  • S,TS,T 至少各包含一个 #

样例解释 1

可以将 SS 逆时针旋转 9090 度并平移,使其与 TT 完全重合。

样例解释 2

无法通过若干次 9090 度旋转和平移操作使两者重合。

样例解释 3

SSTT 不一定是连通的。

样例解释 4

请注意,旋转和平移操作是针对整个 S,TS,T 进行的,而不是针对每个连通分量分别操作。

由 ChatGPT 4.1 翻译