音乐会的等待(诺诺的队列)

2013年11月23日1,8370

来源:http://218.5.5.242:9018/JudgeOnline/problem.php?id=1308

题目描述

  N个人正在排队进入一个音乐会。人们等得很无聊,于是他们开始转来转去,想在队伍里寻找自己的熟人。队列中任意两个人A和B,如果他们是相邻或他们之间没有人比A或B高,那么他们是可以互相看得见的。
写一个程序计算出有多少对人可以互相看见。

输入

        输入的第一行包含一个整数N (1 ≤ N ≤ 500 000), 表示队伍中共有N个人。
接下来的N行中,每行包含一个整数,表示人的高度,以毫微米(等于10的-9次方米)为单位,每个人的调度都小于2^31毫微米。这些高度分别表示队伍中人的身高。

输出

        输出仅有一行,包含一个数S,表示队伍中共有S对人可以互相看见。

样例输入

7 2 4 1 2 2 5 1

样例输出

10

代码