#QSS20234. 观展排队(queue2)
观展排队(queue2)
题目描述
园博会吸引了很多参观者,为了保证参观质量,小明负责控制每个展区的人数,暂时无法入馆的参观者需要排队等候。小明为排队的参观者设计了一个小游戏,规则如下:
假定现在有N位参观者排成一列,将他们从左往右编号为1至N。如果两位参观者i,j (i<j) 中间的每位参观者的身高都低于i,j的身高,就认为i,j可以互相看见。互相看到的两人可以获得一个徽章,请你编写程序帮小明计算:队列中有多少对参观者可以互相看见,便于小明发放徽章。
输入说明
输入的第1行包含1个整数N,表示队列中的人数。接下来1行N个整数,第i个数表示参观者i的身高。
输出说明
输出1行1个整数,表示答案。
样例输入1
4
175 160 180 165
样例输出1
4
样例输入2
5
10 20 30 20 10
样例输出2
4
样例说明
样例1: (1,2) (2,3) (3,4) (1,3)可以互相看见。
样例2:尽管参观者3能够看见参观者1,但是参观者1不能看见参观者3。因此(1,3)不能互相看见。
数据范围与约定
对于全部数据,有1≤N≤10^6,1≤身高≤10^6
测试点1~3 (共30分) : N≤400。
测试点4~8 (共50分) : N≤4000。
测试点9~ 10 (共20分) : 无特殊限制。