海战:判断船只摆放合法性并统计数量

qb445555 程序题 共 个子题

题目描述

在峰会期间,武装部队处于高度戒备状态:警察监视每一条大街,军队保卫建筑物,领空布满F-2003飞机,巡洋船只和舰队被派去保护海岸线。由于国防海军部仅有少量军官能指挥大型海战,因此选择“海战”游戏来培养新的海军指挥官。 在海战游戏中,方形棋盘上放置着若干船只,船只之间不能相互接触。本题中船只均为轴对齐的矩形(由#字符组成),#表示船体,.表示水域。请编写程序判断棋盘上的船只摆放是否合法,若合法则统计船只总数。

输入描述

第一行包含两个用空格分隔的整数R和C(1 ≤ R,C ≤ 1000),分别表示棋盘的行数和列数。 接下来R行,每行包含C个字符,每个字符为#(船体)或.(水域)。

输出描述

若船只摆放合法(所有船只均为完整矩形,且不同船只的#没有上下或左右相邻),则输出There are S ships.,其中S为船只总数;否则输出Bad placement.。

输入样例

6 8
.....#.#
##.....#
##.....#
.......#
#......#
#..#...#

输出样例

There are 5 ships.

本题为编程题,提交代码并运行通过测试点后判分。

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
提交记录
共 条 仅展示自由练习提交
正在加载提交记录…
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧