#P0078. [2023蜀山区小学组] 观展排队(queue)

[2023蜀山区小学组] 观展排队(queue)

题目描述

园博会吸引了很多参观者,为了保证参观质量,小明负责控制每个展区的人数,暂时无法入馆的参观者需要排队等候。小明为排队的参观者设计了一个小游戏,规则如下:

假定现在有 NN 位参观者排成一列,将他们从左往右编号为 11NN。如果两位参观者 i,j(i<j)i, j (i < j) 中间的每位参观者的身高都低于 i,ji, j 的身高,就认为 i,ji, j 可以互相看见。互相看到的两人可以获得一个徽章,请你编写程序帮小明计算:队列中有多少对参观者可以互相看见,便于小明发放徽章。

输入格式

输入的第 11 行包含 11 个整数 NN,表示队列中的人数。

接下来 11NN 个整数,第 ii 个数表示参观者 ii 的身高。

输出格式

输出 1111 个整数,表示答案。

输入数据 #1

4
175 160 180 165

输出数据 #1

4

解释 #1

(1,2)(1,2)(2,3)(2,3)(3,4)(3,4)(1,3)(1,3) 可以互相看见。

输入数据 #2

5
10 20 30 20 10

输出数据 #2

4

解释 #2

尽管参观者 33 能够看见参观者 11,但是参观者 11 不能看见参观者 33。因此 (1,3)(1,3) 不能互相看见。

数据范围

对于全部数据,有 1N1061 \leq N \leq 10^611 \leq 身高 106\leq 10^6

测试点

  • 测试点 131 \sim 3(共 30 分):N400N \leq 400
  • 测试点 484 \sim 8(共 50 分):N4000N \leq 4000
  • 测试点 9109 \sim 10(共 20 分):无特殊限制。