100 atcoder#ABC134E. [ABC134E] Sequence Decomposing

[ABC134E] Sequence Decomposing

配点 : 500500

問題文

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

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

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

制約

  • 1N1051 \leq N \leq 10^5
  • 0Ai1090 \leq A_i \leq 10^9

入力

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

NN

A1A_1

::

ANA_N

出力

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

5
2
1
4
5
3
2

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

4
0
0
0
0
4

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