#397. 双端队列

双端队列

题目描述

Sherry现在碰到了一个棘手的问题,有NN个整数需要排序。

Sherry手头能用的工具就是若干个双端队列。

她需要依次处理这NN个数,对于每个数,Sherry能做以下两件事:

  • 1.新建一个双端队列,并将当前数作为这个队列中的唯一的数;
  • 2.将当前数放入已有的队列的头之前或者尾之后。

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

输入

第一行包含一个整数NN,表示整数的个数。

接下来的NN行每行包含一个整数DiD_i,其中DiD_i表示所需处理的整数

输出

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

样例

样例输入1

6
3
6
0
9
6
3

样例输出1

2

数据范围

n2105n \le 2*10^5