#L0478. 舰队检阅

舰队检阅

题目背景

海军演习期间,指挥部需要快速评估海上编队的部署情况。在一个矩形海图上,用 # 表示舰船区域,. 表示水域。规则要求每两艘舰船不能相邻接触(即任意两艘舰船之间必须至少隔着一行或一列水域)。如果舰船放置违规,需要立即报告。

题目描述

在一个 R×CR \times C 的海图上放置了若干艘舰船,每艘舰船由若干个相连的 # 格组成。如果两艘不同的舰船在上下或左右方向相邻(即共享一条边),则称为接触,这是不允许的。

请你判断舰船是否放置合规,并统计舰船总数。

输入格式

第一行为两个整数 RRCC,用空格隔开,表示海图的行数和列数。

接下来 RR 行,每行 CC 个字符,为 #.# 表示舰船的一部分,. 表示水域。

输出格式

如果放置合规,输出一行 There are S ships.SS 为舰船数量。

否则输出一行 Bad placement.

样例

6 8
.....#.#
##.....#
##.....#
.......#
#......#
#..#...#
There are 5 ships.

提示

对于 100%100\% 的数据,1R,C10001 \le R,C \le 1000

难度 普及-
通过率
尝试 0
已通过 0
ID
1206
类型
传统题
Time Limit
800ms
Memory Limit
128MiB
上传者