AT_joi2022ho_e.砂の城 2 (Sandcastle 2)
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
JOI 君正在沙滩上玩耍。他建造了一座沙堡。这座由 JOI 君建造的沙堡位于沙滩上的一个矩形区域内。这个矩形区域有 H 行 W 列。位于从上往下的第 i 行、从左往右的第 j 列的格子的高度为 Ai,j。注意所有 Ai,j 的值互不相同。
在沙堡上,JOI 君执行了如下操作:
- 首先,JOI 君选择一个格子,从该格子开始移动。
- 然后,他可以从当前格子出发,向上下左右四个方向之一移动到相邻的格子。他必须移动到高度低于当前格子的格子。他可以重复此操作零次或多次。
最终,如果我们从上往下俯视,他经过的格子将形成一个矩形。
给定每个格子的高度信息 Ai,j,请编写程序计算所有可能的由 JOI 君经过的格子组成的矩形的数量。
输入格式
第一行包含两个正整数 H,W。
接下来 H 行,每行 W 个正整数,表示 Ai,1,Ai,2,…,Ai,W。
输出格式
输出一行,一个整数,表示所有可能的由 JOI 君经过的格子组成的矩形的数量。
输入输出样例
输入#1
1 5 2 4 7 1 5
输出#1
10
输入#2
3 2 18 10 19 12 17 13
输出#2
15
输入#3
3 5 83 47 36 38 40 13 10 26 68 67 15 19 20 70 90
输出#3
65
说明/提示
【样例解释 #1】
由于有 10 个可能的由 JOI 君经过的格子组成的矩形,输出 10。

这个样例满足所有子任务的限制。
【样例解释 #2】
由于有 15 个可能的由 JOI 君经过的格子组成的矩形,输出 15。

这个样例满足子任务 2,3,4,5 的限制。
【样例解释 #3】
举个例子,如下矩形可以由 JOI 君经过的格子组成。由于总共有 65 个可能的矩形,输出 65。

这个样例满足子任务 2,3,4,5 的限制。
【数据范围】
本题采用捆绑测试。
对于 100% 的数据,1≤H,W,H⋅W≤5×104,1≤Ai,j≤107,Ai1,j1=Ai2,j2((i1,j1)=(i2,j2))。
- 子任务 1(9 分):H=1。
- 子任务 2(10 分):H⋅W≤100。
- 子任务 3(5 分):H⋅W≤1500。
- 子任务 4(56 分):H⋅W≤7000。
- 子任务 5(20 分):无特殊限制。
译自 JOI 2022 Final T5「砂の城 2 / Sandcastle 2」
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?