#aBC300B. [ABC300B] Same Map in the RPG World

[ABC300B] Same Map in the RPG World

AT_abc300_b [ABC300B] Same Map in the RPG World

题目描述

高桥君正在制作 RPG。他决定编写一个程序,用于判断两张 RPG 世界地图是否一致。

有两个大小为 HHWW 列的网格 AABB。每个网格的每个格子上都写有 #.
AABB 的第 ii 行第 jj 列的字符分别记作 Ai,jA_{i,j}Bi,jB_{i,j}

有如下两种操作,分别称为纵向平移横向平移

  • 对于 j=1,2,,Wj=1,2,\dots,W,同时进行以下操作:
    • A1,j,A2,j,,AH1,j,AH,jA_{1,j},A_{2,j},\dots,A_{H-1,j},A_{H,j} 同时替换为 A2,j,A3,j,,AH,j,A1,jA_{2,j},A_{3,j},\dots,A_{H,j},A_{1,j}
  • 对于 i=1,2,,Hi=1,2,\dots,H,同时进行以下操作:
    • Ai,1,Ai,2,,Ai,W1,Ai,WA_{i,1},A_{i,2},\dots,A_{i,W-1},A_{i,W} 同时替换为 Ai,2,Ai,3,,Ai,W,Ai,1A_{i,2},A_{i,3},\dots,A_{i,W},A_{i,1}

请判断是否存在满足下述条件的非负整数对 (s,t)(s, t)

  • 先对 AA 进行 ss 次纵向平移,再进行 tt 次横向平移后,AABB 完全一致。

这里,AABB 完全一致,指的是对于所有满足 1iH,1jW1 \leq i \leq H, 1 \leq j \leq W 的整数对 (i,j)(i, j),都有 Ai,j=Bi,jA_{i,j} = B_{i,j}

如果存在这样的整数对 (s,t)(s, t),输出 Yes,否则输出 No

输入格式

输入通过标准输入给出,格式如下:

HH WW
A1,1A1,2A1,WA_{1,1}A_{1,2}\dots A_{1,W}
A2,1A2,2A2,WA_{2,1}A_{2,2}\dots A_{2,W}
\vdots
AH,1AH,2AH,WA_{H,1}A_{H,2}\dots A_{H,W}
B1,1B1,2B1,WB_{1,1}B_{1,2}\dots B_{1,W}
B2,1B2,2B2,WB_{2,1}B_{2,2}\dots B_{2,W}
\vdots
BH,1BH,2BH,WB_{H,1}B_{H,2}\dots B_{H,W}

输出格式

如果存在满足条件的整数对 (s,t)(s, t),输出 Yes;否则输出 No

输入输出样例 #1

输入 #1

4 3
..#
...
.#.
...
#..
...
.#.
...

输出 #1

Yes

输入输出样例 #2

输入 #2

3 2
##
##
#.
..
#.
#.

输出 #2

No

输入输出样例 #3

输入 #3

4 5
#####
.#...
.##..
..##.
...##
#...#
#####
...#.

输出 #3

Yes

输入输出样例 #4

输入 #4

10 30
..........##########..........
..........####....###.....##..
.....##....##......##...#####.
....####...##..#####...##...##
...##..##..##......##..##....#
#.##....##....##...##..##.....
..##....##.##..#####...##...##
..###..###..............##.##.
.#..####..#..............###..
#..........##.................
................#..........##.
######....................####
....###.....##............####
.....##...#####......##....##.
.#####...##...##....####...##.
.....##..##....#...##..##..##.
##...##..##.....#.##....##....
.#####...##...##..##....##.##.
..........##.##...###..###....
...........###...#..####..#...

输出 #4

Yes

说明/提示

限制条件

  • 2H,W302 \leq H, W \leq 30
  • Ai,j,Bi,jA_{i,j}, B_{i,j} 仅为 #.
  • H,WH, W 均为整数

样例解释 1

(s,t)=(2,1)(s, t) = (2, 1) 时,可以使 AABB 一致。下面说明 (s,t)=(2,1)(s, t) = (2, 1) 时的操作过程。初始时,AA 如下:

..#
...
.#.
...

首先进行一次纵向平移,AA 变为:

...
.#.
...
..#

再进行一次纵向平移,AA 变为:

.#.
...
..#
...

最后进行一次横向平移,AA 变为,与 BB 完全一致:

#..
...
.#.
...

样例解释 2

无论如何选择 (s,t)(s, t),都无法使 AABB 一致。

由 ChatGPT 4.1 翻译