#P1003. su_starry的西双版纳之旅

su_starry的西双版纳之旅

背景

su_starry学姐放假去西双版纳旅游。导游给她一张用格子划分好的地图,每个格子要么是陆地(1)要么是水域(0)。

描述

给定一个 m×nm \times n 的二进制矩阵 grid,其中 11 表示陆地,00 表示水域。

su_starry学姐突然想知道哪座岛屿面积最大,你能帮她找出来吗?

岛屿是由一些相邻的 11 构成的组合,这里的「相邻」要求两个 11 必须在水平或竖直的四个方向上相邻。假设 grid 的四个边缘都被水域包围。

岛屿的面积是岛上值为 11 的单元格数目。计算并返回 grid 中最大的岛屿面积。如果没有岛屿,则返回 00

输入格式

第一行包含两个整数 m,nm, n,表示矩阵的行数和列数。

接下来 mm 行,每行 nn 个整数(0011),表示地图格子。

输出格式

一行一个整数,表示最大岛屿面积。

样例

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
1 8
0 0 0 0 0 0 0 0
0

限制

1m,n501 \le m, n \le 50grid[i][j]{0,1}grid[i][j] \in \{0, 1\}