最大岛屿面积
Submit solution
Points:
100
Time limit:
1.0s
Memory limit:
4M
Author:
Problem type
Allowed languages
C, C++
🏝️ 最大岛屿面积
📝 题目描述
给定一个大小为 \(m \times n\) 的二进制矩阵 grid,其中:
- 数字
1表示陆地(land) - 数字
0表示水域(water)
一个 岛屿 是由一组 值为 1 的格子 构成的区域,这些格子通过上下左右(四个方向)相邻连接在一起。你可以假设网格的四条边全都被水包围。
岛屿的面积 是岛上格子中值为 1 的数量。
请返回网格中最大的岛屿面积。如果没有岛屿,返回 0。
输入格式
第一行输入两个整数n,m,分别表示矩阵的行和列 从第二行开始到第n+1行,分别表示二进制矩阵的第i行的数据
输出格式
输出一个整数,表示最大的岛屿的面积
📘 示例
示例 1:
输入:
8 13
0 0 1 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 1 1 1 0 0 0
0 1 1 0 1 0 0 0 0 0 0 0 0
0 1 0 0 1 1 0 0 1 0 1 0 0
0 1 0 0 1 1 0 0 1 1 1 0 0
0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 1 1 1 0 0 0
0 0 0 0 0 0 0 1 1 0 0 0 0
输出:
6
解释:
最大岛屿面积为 6。注意答案不是 11,因为岛屿的连接只能是**上下左右(四个方向)**。
示例 2:
输入:
1 8
0 0 0 0 0 0 0 0
输出:
0
🔒 约束条件
- \(m = \text{grid.length}\)
- \(n = \text{grid[i].length}\)
- \(1 \leq m, n \leq 50\)
grid[i][j]的取值只能是0或1
Comments