黑白方块
C++ GESP真题 四级 2024.9 #1
EXY-PG-0164
时间限制:1s 内存限制:512MB

题目描述

小杨有一个 $n$ 行 $m$ 列的网格图,其中每个格子要么是白色,要么是黑色。

小杨想知道网格图中是否存在一个满足如下条件的子矩形:

  • 子矩形由 $4$ 行 $4$ 列组成;
  • 子矩形的第 $1$ 行和第 $4$ 行只包含白色格子;
  • 对于子矩形的第 $2$ 行和第 $3$ 行,只有第 $1$ 个和第 $4$ 个格子是白色的,其余格子都是黑色的;

请你编写程序帮助小杨判断。

输入格式

第一行包含一个正整数 $t$,代表测试用例组数。

接下来是 $t$ 组测试用例。对于每组测试用例,一共 $n+1$ 行。

第一行包含两个正整数 $n,m$,含义如题面所示。

之后 $n$ 行,每行一个长度为 $m$ 的 $01$ 串,代表网格图第 $i$ 行格子的颜色,如果为 $0$,则对应格子为白色,否则为黑色。

输出格式

对于每组测试用例,如果存在,输出 Yes,否则输出 No。

样例说明

样例 1
输入:
3
1 4
0110
5 5
00000
01100
01100
00001
01100
5 5
00000
01100
01110
00001
01100
输出:
No
Yes
No
样例解释:

满足条件的子矩形形如:

0000

0110

0110

0000

数据范围

对于全部数据,保证有 $1≤t≤10,1≤n,m≤100$。