100 atcoder#ABC134E. [ABC134E] Sequence Decomposing

[ABC134E] Sequence Decomposing

题目描述

N N 個の整数からなる数列 A = { A1, A2, , AN } A\ =\ \{\ A_1,\ A_2,\ \cdots,\ A_N\ \} が与えられます。 N N 個それぞれの整数に対して、色を 1 1 つ選んでその色を塗ります。 この時、以下の条件を満たす必要があります:

  • Ai A_i Aj (i < j) A_j\ (i\ <\ j) が同じ色で塗られているならば Ai < Aj A_i\ <\ A_j が成立する

条件を満たすように色を塗る時、用いる色の数の最小値を求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N A1 A_1 : : AN A_N

输出格式

条件を満たすように色を塗る時、用いる色の数の最小値を出力せよ。

题目大意

给你一个长度为 NN 的整数序列:A={A1,A2,A3,,AN}A=\{A_1,A_2,A_3,\cdots,A_N\},对于 NN 个整数,我们可以为每一个整数涂上颜色。但要求满足下面这个条件:

如果 AiA_iAjA_j 被涂上同一种颜色,那一定满足 Ai<AjA_i < A_j

找到满足上述条件的最小颜色数。

By Coros-Trusds\texttt{\color{black}Coros-Trusds}

5
2
1
4
5
3
2
4
0
0
0
0
4

提示

制約

  • 1  N  105 1\ \leq\ N\ \leq\ 10^5
  • 0  Ai  109 0\ \leq\ A_i\ \leq\ 10^9

Sample Explanation 1

例えば、2, 3 2,\ 3 を赤色、1, 4, 5 1,\ 4,\ 5 を青色で塗れば 2 2 色で条件を満たす塗り方が出来ます。

Sample Explanation 2

全ての整数を異なる色で塗るしかありません。