小慕正在处理一个图像分割项目,他有一张由二维数组表示的图片,数组有M行N列。图片中的每个像素值要么是1,要么是5,分别代表两种不同的物体。小慕需要找出像素值为1的物体的个数。边界定义为:如果一个像素值为1的格子,其相邻的格子中存在像素值为5的格子,那么这个的格子就属于边界。相邻的边界格子如果彼此相连,则算作同一个边界。相邻的判断需要考虑8个方向:上、下、左、右、左上、左下、右上、右下。 其他约束: 地图规格满足: 0 < M < 100 0 < N < 100
提示:带虚线的词点一下有通俗解释。
输入描述
<p> 第一行,行数M,列数N </p> <p> 第二行开始,是M行N列的像素的二维数组,仅包含像素1和5 </p>
输出描述
像素1代表的物体的边界个数。如果没有边界输出0(比如只存在像素1,或者只存在像素5)
示例
示例 1
输入
6 6 1 1 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5
输出
2
时间限制 1000 ms · 内存限制 128 MB