题目描述
There are $n$ beautiful skyscrapers in New York, the height of the $i$-th one is $h_i$. Today some villains have set on fire first $n - 1$ of them, and now the only safety building is $n$-th skyscraper.
Let's call a jump from $i$-th skyscraper to $j$-th ($i < j$) discrete, if all skyscrapers between are strictly lower or higher than both of them. Formally, jump is discrete, if $i < j$ and one of the following conditions satisfied:
- $i + 1 = j$
- $\max(h_{i + 1}, \ldots, h_{j - 1}) < \min(h_i, h_j)$
- $\max(h_i, h_j) < \min(h_{i + 1}, \ldots, h_{j - 1})$.
At the moment, Vasya is staying on the first skyscraper and wants to live a little longer, so his goal is to reach $n$-th skyscraper with minimal count of discrete jumps. Help him with calcualting this number.
Input
The first line contains a single integer $n$ ($2 \le n \le 3 \cdot 10^5$) — total amount of skyscrapers.
The second line contains $n$ integers $h_1, h_2, \ldots, h_n$ ($1 \le h_i \le 10^9$) — heights of skyscrapers.
Output
Print single number $k$ — minimal amount of discrete jumps. We can show that an answer always exists.
输入格式
见题面 Input 部分
输出格式
见题面 Output 部分
样例输入
样例输出
提示
In the first testcase, Vasya can jump in the following way: $1 \rightarrow 2 \rightarrow 4 \rightarrow 5$.
In the second and third testcases, we can reach last skyscraper in one jump.
Sequence of jumps in the fourth testcase: $1 \rightarrow 3 \rightarrow 5$.