求解
2023-07-16 18:46:29
发布于:河北
这天,AC狗走在路上,突然摔了一跤,爬起来后发现自己好像有点变化,AC的C摔掉了,只剩下A,这回得改名叫A狗了。
但是AC狗不想改名,想找回他的C,他在地上疯狂寻找,发现地上掉落了不少个C。
假设地面是一个
�
×
�
N×M 的平面。平面里要么是字符.,要么是字符*。找到所有*构成的C的个数。
C的上下两端的长度相同,长度至少为2,竖列的长度至少为3,且C的内部不能有*。并且这些C独立唯一,不和其他字符连在一起。且C的列宽度为1。
(连在一起是指上下左右四个方向)
例如:
.....
..
....
.*.
.....
是一个C。
.....
..
....
...
.....
不是一个C,上下两端长度不同。
.....
..
...
.**.
.....
不是一个C,C竖着的列宽度为1,且内部不能有符号。
.....
..
....
.*.
**...
不是一个C,因为不是独立存在,和其他连在一起。
.....
..
....
.*.
*....
是一个C。
输入格式
输入的第一行是两个整数
�
,
�
N,M
接下来
�
N行每行
�
M 个字符,要么是.要么是*,代表地面。
输出格式
输出为一个整数,代表地面里C的数量。
输入输出样例
输入#1
复制
8 10
...**.....
...*
.......
..***
..........
*.........
输出#1
复制
4
输入#2
复制
11 9
......
....
......
**....
......
**...**.
........
...***..
*.......
......
.....
输出#2
复制
2
说明/提示
【样例说明】
对于样例2,有一个C的内部出现了*,另一个C和其他字符连接在一起,不是独立存在。
【数据规模】
对于百分百的数据,
1
<
�
,
�
<
2000
1<=N,M<=2000
C的数量不超过1000
这里空空如也
有帮助,赞一个