QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 32 MB Total points: 100

#12690. 山脊与山谷

Statistics

Byteasar 热爱在山间徒步。在远足过程中,他会探索附近所有的山脊和山谷。因此,为了规划行程并预估所需时间,他必须知道他即将前往的区域中山脊和山谷的数量。你需要帮助 Byteasar。

Byteasar 为你提供了一张他下一次探险区域的地图。地图是一个 $n \times n$ 的正方形。对于正方形中的每个方格 $(i,j)$(其中 $i,j \in \{1,…,n\}$),给出了其高度 $w(i,j)$。

如果两个方格有公共边或公共顶点,则称它们是相邻的(即方格 $(i,j)$ 与方格 $(i-1,j-1), (i-1,j), (i-1,j+1), (i,j-1), (i,j+1), (i+1,j-1), (i+1,j), (i+1,j+1)$ 相邻,前提是这些方格在地图范围内)。

我们称一组方格 $S$ 构成一个山脊(或山谷),如果:

  • $S$ 中的所有方格高度相同,
  • $S$ 构成地图的一个连通部分(即从 $S$ 中的任意方格出发,仅通过相邻方格移动且不离开集合 $S$,可以到达 $S$ 中的任何其他方格),
  • 如果 $s \in S$ 且方格 $s' \notin S$ 与 $s$ 相邻,则 $w_s > w_{s'}$(对于山脊)或 $w_s < w_{s'}$(对于山谷)。

特别地,如果地图上所有方格的高度都相同,它们既构成一个山脊,也构成一个山谷。

你的任务是确定该地图所描述地形中山脊和山谷的数量。

编写一个程序:

  • 从标准输入读取地图描述,
  • 确定该地图所描述地形中山脊和山谷的数量,
  • 将结果输出到标准输出。

输入格式

标准输入的第一行包含一个整数 $n$ ($2 \le n \le 1\,000$),表示地图的大小。接下来的 $n$ 行描述了地图的每一行。第 $(i+1)$ 行(对于 $i \in \{1,…,n\}$)包含 $n$ 个整数 $w(i,1), \dots, w(i,n)$ ($0 \le w_i \le 1\,000\,000\,000$),以空格分隔。这些数字表示地图第 $i$ 行各方格的高度。

输出格式

标准输出的第一行且仅包含一行,包含两个由空格分隔的整数,分别表示地图所描述地形中山脊的数量和山谷的数量。

样例

输入 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

输入 2

5
5 7 8 3 1
5 5 7 6 6
6 6 6 2 8
5 7 2 5 8
7 1 0 1 7

输出 2

3 3

上图展示了山脊(实线)和山谷(虚线)。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.