#YDRB007D. 湖心岛

湖心岛

题目描述

将一片区域的地图简化为 nnmm 列的网格,其中第 ai,j{0,1}a_{i,j} \in \{0,1\}ai,j=0a_{i,j}=0 表示第 ii 行,第 jj 列的格子覆盖着水;ai,j=1a_{i,j}=1 表示第 ii 行,第 jj 列的格子覆盖着陆地。

网格是四联通的,具体来说,如果两个格子有公共边,则称这两个格子相邻,如果一个集合中的格点的类型相同且相互可以通过相邻格点到达,则称其为一个连通块。

如果一个连通块无法加入其他格点,则称其为极大连通块。

我们称由水构成的极大连通块为海洋(与边界相邻)或者湖泊(不与边界相邻),称由陆地构成的极大连通块为海岛(与海洋相邻)或者湖心岛(不与海洋相邻),我们假定 nnmm 列网格的外部都是海洋。

现在请找出这张地图中湖心岛的数量。

输入格式

第一行两个整数 n,mn,m 表示地图的尺寸。

接下来 nn 行每行 mm 个整数,其中第 ii 行,第 jj 列的整数为 ai,ja_{i,j}

输出格式

输出一行一个整数,表示这张地图中湖心岛的数量。

输入输出样例 #1

输入 #1

7 6
0 1 1 1 0 0
1 0 0 0 1 0
1 0 1 0 1 1
1 0 0 1 0 1
0 1 1 0 1 0
0 0 1 1 0 0
0 0 0 0 0 1

输出 #1

2

输入输出样例 #2

输入 #2

5 5
1 1 1 1 1
1 1 0 1 1
1 0 1 0 1
1 1 0 1 1
1 1 1 1 1

输出 #2

1

说明/提示

对于 30%30\% 的数据,n,m10n,m \le 10

对于另外 30%30\% 的数据,第一行,第一列,最后一行,最后一列的全部格子都是陆地。

对于全部数据,1n,m1000,ai,j{0,1} 1 \le n,m \le 1000,a_{i,j} \in \{0,1\}