#789
Unrated
とてもたのしい家庭菜園
서브테스크
시간 제한
2s
메모리 제한
512MB
제출
0
정답
0
맞힌 사람
0
정답 비율
0.0%

문제

家庭菜園が趣味のビ太郎は自宅の庭でビバ草という植物を育てている.庭には NN 株のビバ草が東西方向に一列に植えられており,西側から順に 11 から NN までの番号が付いている.現在,ビバ草 ii (1iN1 \le i \le N) の背丈は AiA_i である.

育てているビバ草は特別な品種改良の結果,水を与えるたびに背丈が 11 伸びる.ビ太郎は庭の見栄えを良くするために水やりを複数回行い,以下の条件を満たすようにしたいと考えている.

  • すべての水やりを行った後のビバ草 ii (1iN1 \le i \le N) の背丈を BiB_i とする.このとき,「1jk11 \le j \le k - 1 に対し Bj<Bj+1B_j < B_{j+1}」かつ「kjN1k \le j \le N - 1 に対し Bj>Bj+1B_j > B_{j+1}」を満たすような整数 kk (1kN1 \le k \le N) が存在する.

ただし,ビ太郎は不器用なため,11 回の水やりにおいて,ある区間上のビバ草に一斉に水を与えることしかできない.すなわち,水やりを行うたびにある整数 L,RL, R (1LRN1 \le L \le R \le N) を選び,ビバ草 L,L+1,,RL, L + 1, \ldots, R に水を与える.

ビ太郎は水やりの回数をできるだけ少なくしたい.

ビバ草の数と現在の背丈の情報が与えられたとき,条件を満たすのに必要な水やりの回数の最小値を求めるプログラムを作成せよ.

입력

入力は以下の形式で標準入力から与えられる.入力される値はすべて整数である.

N
A_1 \cdots A_N

출력

必要な水やりの回数の最小値を,標準出力に 11 行で出力せよ.

예제 입력 1

5
3 2 2 3 1

예제 출력 1

3

예제 입력 2

5
9 7 5 3 1

예제 출력 2

0

예제 입력 3

2
2021 2021

예제 출력 3

1

예제 입력 4

8
12 2 34 85 4 91 29 85

예제 출력 4

93

제한

  • 2N2000002 \le N \le 200\,000
  • 1Ai10000000001 \le A_i \le 1\,000\,000\,000 (1iN1 \le i \le N).

서브태스크

  1. (4040 점) N2000N \le 2\,000
  2. (6060 점) 追加の制約はない.
코드 제출

코드를 제출하려면 로그인이 필요합니다.

로그인
내 제출
제출 내역이 없습니다.
맞은 사람
아직 맞은 사람이 없습니다.
난이도 투표
Unrated0명 투표
로그인 후 AC 받으면 투표할 수 있습니다.
전체 제출
제출 내역이 없습니다.