#1578. 高山低谷

高山低谷

题目描述

乔斯要继续开发导航软件,请你一起完成软件的内核程序。乔斯导航的程序界面有一张山区地图,这张地图被分为n×n个网格,每个方格 (i,j)有一个高度 wij。如果两个方格有公共顶点,则它们是相邻的。

山峰和山谷的定义如下:

均由地图上的一个连通块组成;

所有方格高度都相同;

周围的方格(即不属于山峰或山谷但与山峰或山谷相邻的格子)高度均大于山谷的高度,或小于山峰的高度。

请你编程求地图内山峰和山谷的数量。特别地,如果整个地图方格的高度均相同,则整个地图既是一个山谷,也是一个山峰。

输入格式

第一行一个整数n,表示地图的大小。

接下来 n行每行 n 个整数表示地图。第 i 行有 n 个整数wi1,wi2,…,win,表示地图第 i 行格子的高度。

输出格式

输出一行两个整数,分别表示山峰和山谷的数量。

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
2 1

样例1解释说明: 2≤n≤1000,0≤wij≤1000000000