- gf25030 的博客
图形
- @ 2026-7-28 21:38:51
题目描述 在二维网格上有两个图形 S 和 T。网格由正方形单元格组成。
S 位于 N 行 N 列的网格内,由所有 S[i][j] 为 # 的单元格组成。
T 也位于 N 行 N 列的网格内,由所有 T[i][j] 为 # 的单元格组成。
请判断是否可以通过 90 度旋转和平移的组合操作使 S 和 T 完全重合。
输入格式 输入从标准输入按以下格式给出:
N
S[1][1]S[1][2]…S[1][N]
…
S[N][1]S[N][2]…S[N][N]
T[1][1]T[1][2]…T[1][N]
…
T[N][1]T[N][2]…T[N][N]
输出格式 如果可以通过 90 度旋转和平移的组合操作使 S 和 T 完全重合,输出 Yes;否则输出 No。
输入输出样例 #1 输入 #1
5
.....
..#..
.###.
.....
.....
.....
.....
....#
...##
....#
输出 #1
Yes
输入输出样例 #2 输入 #2
5
#####
##..#
#..##
#####
.....
#####
#..##
##..#
#####
.....
输出 #2
No
输入输出样例 #3 输入 #3
4
#...
..#.
..#.
....
#...
#...
..#.
....
输出 #3
Yes
输入输出样例 #4 输入 #4
4
#...
.##.
..#.
....
##..
#...
..#.
....
输出 #4
No
说明/提示 约束条件 1 ≤ N ≤ 200 S, T 只包含 # 和 . S, T 至少包含一个 #
样例解释 1 将 S 逆时针旋转 90 度并进行平移,可以与 T 完全重合。
样例解释 2 无法通过 90 度旋转和平移的组合操作使两个图形重合。
样例解释 3 S 和 T 不一定是连通的。
样例解释 4 请注意,旋转和移动操作是针对 S, T 整体进行的,而不是对每个连通分量单独操作。