2825 - 巡山

题目描述

唐僧师徒一路西行,快要到狮驼岭。狮驼岭的青狮、白象、大鹏三位大王听说唐僧快到非常开心,摩拳擦掌,准备捉了唐僧。

为了能够顺利捉到唐僧,大王们交代小旋风,附近的每座山的山顶都要安排小妖在山顶巡视,随时注意唐僧师徒的行踪。

小旋风立刻拿来了狮驼岭附近山丘的地图,这张地图是一个 N \times M 的矩阵,矩阵的第 i 行第 j 列用一个整数 Aij 表示该位置的高度。

从某位置开始向其所有相邻的位置能延伸到的,所有不超过当前位置高度的位置构成一座山,一座山中高度的最大值是山顶。(相邻的定义是某位置周边 8 个点认为和该点相邻)

如果某位置在地图的边界上,默认该点的高度一定是大于边界外的高度。

请你编程帮助小旋风计算出,小旋风需要派出多少小妖在山顶巡视。

请注意:同一座山如果有多个相邻位置都可以作为山顶,那么这座山只需要派出 1 个小妖在其中一个山顶巡视就可以了。

输入

1 行读入 N,M 表示地图的大小。

接下来 N 行,每行有 M 个空格隔开的整数,表示该位置的高度。

输出

输出一个整数,代表需要派出小妖的数量。

样例

输入

8 7 
4 4 2 2 1 0 1 
3 4 3 2 1 0 1 
2 2 2 2 1 0 1 
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
说明

样例 1 解释

三座山的山顶,在下图中,通过红色加粗表示。

数据范围

对于 100\% 的数据,1 \lt N,M \le 7000 \le A_{ij} \le 10000

来源

东方博宜OJ

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 1 枚
难度 基础


上一题 下一题