CF1693E Outermost Maximums

题目描述

有一个长度为 $n+2$ 的序列 $a$,其中 $a_0=a_{n+1}=0$,其余元素均给定。 你可以进行下面两种操作任意次: 1. 设 $x$ 表示序列 $a$ 最靠左的最大值的位置,则令 $a_x\leftarrow \max_{i=0}^{x-1}a_i$。 2. 设 $y$ 表示序列 $a$ 最靠右的最大值的位置,则令 $a_y\leftarrow \max_{i=y+1}^{n+1}a_i$。 你需要求出使序列 $a$ 的所有元素均变成 $0$ 所需的最少的操作总次数。

输入格式

第一行输入一个整数 $n(1\leq n\leq2\times10^5)$。 接下来一行输入 $n$ 个整数 $a_1,a_2,\cdots,a_{n}(0\leq a_i\leq n)$。

输出格式

输出一行一个整数表示使序列 $a$ 的所有元素均变成 $0$ 所需的最少的操作次数。

说明/提示

在第一个样例中,执行第一次操作得到 $\langle 1, \underline{1}, 2, 4, 0, 2 \rangle$,执行第二次操作得到 $\langle 1, 4, 2, \underline{2}, 0, 2 \rangle$。 一种达成目标的方式如下所示(下划线标记最近一次修改的位置):\ $\langle 1, 4, 2, 4, 0, 2 \rangle \to \langle 1, 4, 2, \underline{2}, 0, 2 \rangle \to \langle 1, \underline{1}, 2, 2, 0, 2 \rangle \to \langle 1, 1, 2, 2, 0, \underline{0} \rangle \to \langle 1, 1, 2, \underline{0}, 0, 0 \rangle \to \langle 1, 1, \underline{0}, 0, 0, 0 \rangle \to \langle \underline{0}, 1, 0, 0, 0, 0 \rangle \to \langle 0, \underline{0}, 0, 0, 0, 0 \rangle$ 在第三个样例中,每个元素已经为零,因此无需进行操作。