CF1722F.L-shapes
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
An L-shape is a figure on gridded paper that looks like the first four pictures below. An L-shape contains exactly three shaded cells (denoted by *), which can be rotated in any way.

You are given a rectangular grid. Determine if it contains L-shapes only, where L-shapes can't touch an edge or corner. More formally:
- Each shaded cell in the grid is part of exactly one L-shape, and
- no two L-shapes are adjacent by edge or corner.
For example, the last two grids in the picture above do not satisfy the condition because the two L-shapes touch by corner and edge, respectively.
L 形是一种在方格纸上呈现的图形,其形状如下面前四幅图所示。一个 L 形恰好包含三个被涂黑的格子(用 * 表示),且可作任意旋转。

给定一个矩形网格,请判断该网格是否仅由 L 形构成,且任意两个 L 形之间既不能相邻(共享边),也不能对角接触(共享顶点)。更严格地说,需同时满足以下两个条件:
- 网格中每个被涂黑的格子恰好属于一个 L 形;
- 任意两个 L 形之间既不共享边,也不共享顶点。
例如,上图中最后两个网格不满足该条件:前者中的两个 L 形在顶点处接触,后者中的两个 L 形则共享一条边。
输入格式
The input consists of multiple test cases. The first line contains an integer t (1≤t≤100) — the number of test cases. The description of the test cases follows.
The first line of each test case contains two integers n and m (1≤n,m≤50) — the number of rows and columns in the grid, respectively.
Then n lines follow, each containing m characters. Each of these characters is either '.' or '*' — an empty cell or a shaded cell, respectively.
输入包含多个测试用例。第一行包含一个整数 t(1≤t≤100),表示测试用例的数量。随后是各测试用例的描述。
每个测试用例的第一行包含两个整数 n 和 m(1≤n,m≤50),分别表示网格的行数和列数。
接下来是 n 行,每行包含 m 个字符。每个字符为 '.' 或 '*',分别表示空单元格或阴影单元格。
输出格式
For each test case, output "YES" if the grid is made up of L-shape that don't share edges or corners, and "NO" otherwise.
You can output the answer in any case (for example, the strings "yEs", "yes", "Yes" and "YES" will be recognized as a positive answer).
对于每个测试用例,如果网格由互不共享边或角的 L 形组成,则输出 “YES”;否则输出 “NO”。
您可以以任意大小写形式输出答案(例如,字符串 “yEs”、“yes”、“Yes” 和 “YES” 均被视为肯定回答)。
输入输出样例
输入#1
10 6 10 ........** .**......* ..*..*.... .....**... ...*.....* ..**....** 6 10 ....*...** .**......* ..*..*.... .....**... ...*.....* ..**....** 3 3 ... *** ... 4 4 .*.. **.. ..** ..*. 5 4 .*.. **.. .... ..** ..*. 3 2 .* ** *. 2 3 *.. .** 3 2 .. ** *. 3 3 .** *.* **. 3 3 ..* .** ..*
输出#1
YES NO NO NO YES NO NO YES NO NO
输入解题思路,AI测评打分。不知道怎么写?