岛屿数量:ACM 模式刷题
按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。
题目描述
给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量。
岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。
此外,你可以假设该网格的四条边均被水包围。
输入格式
第一行输入 m 和 n。
接下来 m 行,每行输入一个长度为 n 的 01 字符串。
输出格式
输出岛屿数量。
数据范围
- 1 ≤ m, n ≤ 300
- 网格只包含字符 0 和 1
公开样例
样例 1
输入
4 5 11110 11010 11000 00000
输出
1
所有陆地通过四方向相连。
样例 2
输入
4 5 11000 11000 00100 00011
输出
3
网格中有三个互不连通的陆地区域。
练习建议
先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。