/ WHOJ / 题库 /

高低不平

高低不平

题目描述

有一个 \(n×n\) 的矩阵网格,矩阵上每个位置的数字表示这个格子的高度。每个格子和最多和周边 \(8\) 个格子相邻(也就是上下左右以及两个对角线位置的 \(8\) 个格子)。我们会发现,某些高度相同且连通的格子区域 \(S\) 比它周边的格子都要高或都要低,我们将之称为波峰或波谷。具体定义如下:

\(1.\) \(S\) 里的所有格子高度都相同。

\(2.\) \(S\) 里的所有格子都联通。

\(3.\) 对于任意一个属于区域 \(S\) 的格子 \(a\) 来说:

如果对于所有与 \(a\) 相邻的且不属于 \(S\) 的格子 \(b\),都有 \(a\) 的高度 \(>b\) 的高度,那么称 \(S\) 为波峰;

如果对于所有与 \(a\) 相邻的且不属于 \(S\) 的格子 \(b\),都有 \(a\) 的高度 \(<b\)的高度,那么称 \(S\) 为波谷;

那么请你计算矩阵中波峰和波谷的数量,如果所有格子都有相同的高度,那么这个矩阵既是波峰又是波谷。

格式

输入格式

输入第 \(1\) 行一个正整数 \(n\),表示矩阵的大小\((1<=n<=1000)\)。

接下来一个 \(n×n\) 的矩阵,表示矩阵上每个格子的高度。\((0<=\) 高度 \(<=1000000000)\)

输出格式

输出一行一个整数,表示开心指数。

输出一行 \(2\) 个整数,分别表示波峰和波谷的数量。

样例1

样例输入1

5
8 8 8 7 7
7 7 8 8 7
7 7 7 7 7
7 8 8 7 8
7 8 8 8 8

样例输出1

2 1

来源

地址:\(\text{Online~Judge}\)
作者:\(hoogy\)
模拟赛\(T4\)