2457 - [BeiJing2011]双端队列

   Sherry现在碰到了一个棘手的问题,有N个整数需要排序。
   Sherry手头能用的工具就是若干个双端队列。
   

她需要依次处理这N个数,对于每个数,Sherry能做以下两件事: 1.新建一个双端队列,并将当前数作为这个队列中的唯一的数; 2.将当前数放入已有的队列的头之前或者尾之后。

对所有的数处理完成之后,Sherry将这些队列排序后就可以得到一个非降的序列。

Input

第一行包含一个整数N,表示整数的个数。接下来的N行每行包含一个整数Di,其中Di表示所需处理的整数。

Output

其中只包含一行,为Sherry最少需要的双端队列数。

Examples

Input

6
3
6
0
9
6
3

Output

2

Hint

100%的数据中N≤200000。

Time Limit 1 second
Memory Limit 128 MB
Stats
上一题 下一题