#P1331. 海战游戏

    ID: 332 远端评测题 800ms 128MiB 尝试: 12 已通过: 6 难度: 9 上传者: 标签>搜索广度优先搜索深度优先搜索福建省历届夏令营BFSDFS

海战游戏

题目描述

AC鸭要玩一个海战游戏,这个游戏在一个方形的盘上放置了固定数量和形状的船只,每只船却不能碰到其它的船。在这个题中,我们仅考虑船是方形的,所有的船只都是由图形组成的方形。编写程序求出该棋盘上放置的船只的总数。

输入格式

输入文件头一行由用空格隔开的两个整数R和C组成,1<=R,C<=1000,这两个数分别表示游戏棋盘的行数和列数。接下来的R行每行包含C个字符,每个字符可以为“#”,也可为“.”,“#”表示船只的一部分,“.”表示水。

输出格式

为每一个段落输出一行解。如果船的位置放得正确(即棋盘上只存在相互之间不能接触的方形,如果两个“#”号上下相邻或左右相邻却分属两艘不同的船只,则称这两艘船相互接触了)。就输出一段话“There are S ships.”,S表示船只的数量。否则输出“Bad placement.”。

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