P12931 [NOISG 2020 Prelim] Mountains
题目背景
企鹅 Pengu 和他的朋友们生活在南极洲。虽然企鹅不会飞,但他们渴望体验翱翔天际的感觉。为了满足大家的愿望,Pengu 决定借助科技的力量——滑翔伞。
题目描述
幸运的是,在南极横贯山脉中有 $n$ 座山峰。这些山峰从左到右依次编号为 $1$ 到 $n$,第 $i$ 座山峰的高度为 $H_i$。
Pengu 决定选择三座山峰 $x,y,z$,他打算在山峰 $y$ 上建立起飞站,在山峰 $x$ 和 $z$ 上分别设置接收站。企鹅们将从山峰 $y$ 滑翔至山峰 $x$ 或 $z$。
为了容纳更多企鹅并避免空中相撞,山峰 $x$ 必须位于山峰 $y$ 左侧,山峰 $z$ 必须位于山峰 $y$ 右侧,并且山峰 $x$ 和 $z$ 的高度必须都**严格小于**山峰 $y$。
Pengu 非常严谨,他想统计所有满足条件的选择方案。请你帮他计算,满足以下条件的三元组 $(x,y,z)$ 有多少个:
- $1 \leq x < y < z \leq n$;
- $H_x < H_y$ 且 $H_z < H_y$。
输入格式
第一行包含一个整数 $n$,表示山峰的数量。
第二行包含 $n$ 个整数,第 $i$ 个整数表示第 $i$ 座山峰的高度 $H_i$。
输出格式
输出一个整数,表示满足条件的方案总数。
说明/提示
【样例解释】
对于样例 #1:
- 共有 $2$ 组满足条件的三元组:$(1,2,4)$、$(1,3,4)$。
对于样例 #2:
- 共有 $7$ 组满足条件的三元组:$(1,3,4)$、$(1,3,6)$、$(1,5,6)$、$(2,3,4)$、$(2,3,6)$、$(2,5,6)$、$(4,5,6)$。
【数据范围】
- $3 \leq n \leq 3 \times 10^5$;
- $0 \leq H_i \leq 10^{18}$。
| 子任务编号 | 分值 | 额外限制 |
| :--------: | :--: | :-------------------------------------------------: |
| $1$ | $2$ | $H_i$ 单调不减(即 $H_i \leq H_j$,对任意 $i < j$) |
| $2$ | $4$ | $0 \leq H_i \leq 1$ |
| $3$ | $9$ | $0 \leq H_i \leq 99$ |
| $4$ | $36$ | $n \leq 500$ |
| $5$ | $28$ | $n \leq 10^4$ |
| $6$ | $9$ | $0 \leq H_i \leq 10^5$ |
| $7$ | $12$ | 无额外限制 |