您的位置:首页 > 其它

boj407.BLOCKS-bfs

2014-07-15 17:40 190 查看


题目描述

给定一个N∗M的矩阵,求问里面有多少个由'#'组成的矩形,"There
are 5 ships.",若是里面有一个不是矩形的联通块,则输出"So Sad"


输入格式

1≤n,m≤1000
有多组数据,EOF结束。


输出格式

每行对应一个answer


输入样例

[code]6 8
.....#.#
##.....#
##.....#
.......#
#......#
#..#...#
6 8
.....#.#
##.....#
###...##
.......#
##.....#
#..#...#



输出样例

[code]There are 5 ships.
So Sad

[code]没错,解题思路就是从第一个‘#’号开始,对它上下左右开始查找是否存在‘子#’,然后再在子#号中找到下一层‘#’。最后统计这片连通域的‘#’是否为最大包围矩形的方格个数,若相等,则计入船数,若不等,则直接sad。另提:0船也是输出 0 ships;

[code]另附偶同学代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: