首页 / 题库

P14050 - 岛屿数量

算法入门
通过次数0 提交次数0 内存限制 512MB 时间限制1秒

描述

岛屿总是被水包围,并且每座岛屿只能由水平方向和竖直方向上相邻的陆地连接形成。现在输入整数$m、n( 1 ≤ m, n ≤ 300)$,再输入一个大小为$ m \times n$由 `1`(陆地)和 `0`(水)组成的的二维网格,请你计算网格中岛屿的数量并输出岛屿的数量。

输入

第一行输入两个正整数$m$和$n$,表示大小为$m \times n$的矩阵<br>
接下来的$m$行,每行输入由0或1组成的$n$个数,表示矩阵中的陆地和水。

输出

一行一个整数,表示网格中岛屿的数量

样例

  • 复制
  • 复制

提示

样例输出的3座岛屿数量如下图所示,染色部分为岛屿。<br>
![](/uploads/20230908/1694145642286.png)<br>
岛屿问题可以理解为一类网格问题。每个格子中的数字可能是 0 或者 1。我们把数字为 0(蓝色块) 的格子看成海洋格子,数字为 1(棕色块) 的格子看成陆地格子,这样相邻的陆地格子就连接成一个岛屿,而题目的要求就是找出岛屿的数量。同样岛屿问题可以演化各种岛屿问题的变种,包括岛屿的数量、面积(‘1’块的个数)、周长(‘1’块的边界长度等)等。不过这些问题,基本都可以用 DFS 遍历来解决。

意见反馈

    最多上传3张图片,格式为JPG、PNG、JPEG,单张不超过5MB

    注册

    发送验证码

    密码必须包含数字、字母和特殊字符

    找回密码

    发送验证码

    密码必须包含数字、字母和特殊字符

    运行 ID:67149

    • 测试点1:Accepted
    • 用时:0 ms
    • 内存:288 kb
    • 测试点2:Accepted
    • 用时:0 ms
    • 内存:288 kb
    输入
    203
    输出
    203

    test

    测评信息

    错误.in文件下载

    错误.out文件下载

    运行 ID:67149

    2019-01-24 15:06:36