#2446. 保卫牧场

保卫牧场

题目描述

农夫JOHN\red{JOHN}的农夫上有很多小山丘,他想要在那里布置一些保镖……去保卫他的那些相当值钱的奶牛们。 他想知道如果在一座小山丘上布置一名保镖的话,他总共需要招聘多少名保镖。

他现在手头有一个用数字矩阵来表示地形的地图。这个矩阵有N\red{N}行(1<N<=100)\red{1 < N < = 100)}M\red{M}(1<M<=70)\red{( 1 < M < = 70) }。矩阵中的每个元素都有一个值Hij(0<=Hij<=10,000)\red{H_{ij}(0 < = H_{ij} < =10,000)}来表示该地区的海拔高度。请你帮助他统计出地图上到底有多少个小山丘。

小山丘的定义是:若地图中一个元素所邻接的所有元素都比这个元素高度要小(或它邻接的是地图的边界),则该元素和其周围所有按照这样顺序排列的元素的集合称为一个小山 丘。这里邻接的意义是:若一个元素与另一个横坐标纵坐标和它的横纵坐标相差不超过1\red{1,}则称这两个元素邻接。

输入格式

1\red{1}行:两个空格分隔的整数:N\red{N}M\red{M}

2...\red{2...}N+1\red{N+1}行:

i+1\red{i+1}行用M\red{M}个空间分隔整数描述矩阵的第i\red{i}行:Hij\red{H_{ij}}

输出格式

1\red{1}行:指定山顶数量的单个整数

样例

输入样例

8 7
4 3 2 2 1 0 1
3 3 3 2 1 0 1
2 2 2 2 1 0 0
2 1 1 1 1 0 0
1 1 0 0 0 1 0
0 0 0 1 1 1 0
0 1 2 2 1 1 0
0 1 1 1 2 1 0

输出样例

3

提示

三个山丘分别是:

左上角的高度为4\red{4}的方格,右上角的高度为1\red{1}的方格,还有最后一行中高度为2\red{2}的方格.