#5456. 图片匹配

图片匹配

题目描述

在一次计算机视觉的研究项目中,研究员需要判断一张大图中是否存在另一张模板图案。 大图和模板图案都是由二维像素矩阵表示的。每个图像中的像素点可以是白色或黑色。大图 AA 是一个 N×NN \times N 的二值矩阵,模板图 BB 是一个 M×MM \times M 的二值矩阵。二值矩阵中,白色像素用字符 . 表示,黑色像素用字符 # 表示。 判断大图 AA 中是否存在模版图案 BB 的方法是:在大图中,如果能取出 M×MM \times M 的子矩阵,且该子矩阵与模版 BB 完全相同,则视为大图中存在模版图案 BB

输入格式

输入包含两部分,第一部分是大图的大小和内容,第二部分是模板图案的大小和内容:

  • 第一行:两个整数 NNMM,表示大图 AA 和模板 BB 的大小。
  • 接下来的 NN 行:表示大图 AA 的每一行,其中每一行是由字符 #. 组成的字符串。
  • 接下来的 MM 行:表示模板 BB 的每一行,其中每一行是由字符 #. 组成的字符串。

输出格式

如果大图 AA 中存在模版图案 BB ,则输出 Yes,否则输出 No

样例输入1

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

样例输出1

Yes

样例输入2

4 1
....
....
....
....
#

样例输出2

No

样例1说明

在大图 AA 中,从 1,11,1 点开始取大小为 2×22 \times 2 的子图,和模版 BB 相同,输出 Yes

数据范围

对于 100%100\% 的数据,满足:1MN501 \leq M \leq N \leq 50 ,且所有字符都是 #.