#AGC013A. [AGC013A] Sorted Arrays

[AGC013A] Sorted Arrays

配点 : 300300

問題文

長さ NN の配列 AA が与えられます。 AA を何箇所かで切って、AA の連続した部分であるようないくつかの数列に分けます。 この時、分けられたあとの数列は全て、単調非減少または単調非増加な列になっている必要があります。 最小で何個の数列に分ければ良いかを求めて下さい。

制約

  • 1N1051 \leq N \leq 10^5
  • 1Ai1091 \leq A_i \leq 10^9
  • AiA_i は全て整数である

入力

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

NN

A1A_1 A2A_2 ...... ANA_N

出力

最小で何個の数列に分ければよいか出力せよ。

6
1 2 3 2 2 1
2

[1,2,3][1,2,3][2,2,1][2,2,1] に分ければよいです。

9
1 2 1 2 1 2 1 2 1
5
7
1 2 3 2 1 999999999 1000000000
3