#include <bits/stdc++.h>
using namespace std;

int main(){
    int n,a,b,c,ans=0;
    cin>>n>>a>>b;
    for(int i=1;i<=n-2;i++){
        cin>>c;
        if(b!=max(a,max(b,c))&&b!=min(a,min(b,c)))ans++;
        a=b;b=c;
    }
    cout<<ans;
    return 0;
}
### Prompt

Develop a solution in Cpp to the problem described below:

We have a permutation p = {p_1,\ p_2,\ ...,\ p_n} of {1,\ 2,\ ...,\ n}.

Print the number of elements p_i (1 < i < n) that satisfy the following condition:

* p_i is the second smallest number among the three numbers p_{i - 1}, p_i, and p_{i + 1}.

Constraints

* All values in input are integers.
* 3 \leq n \leq 20
* p is a permutation of {1,\ 2,\ ...,\ n}.

Input

Input is given from Standard Input in the following format:


n
p_1 p_2 ... p_n


Output

Print the number of elements p_i (1 < i < n) that satisfy the condition.

Examples

Input

5
1 3 5 4 2


Output

2


Input

9
9 6 3 2 5 8 7 4 1


Output

5

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;

int main(){
    int n,a,b,c,ans=0;
    cin>>n>>a>>b;
    for(int i=1;i<=n-2;i++){
        cin>>c;
        if(b!=max(a,max(b,c))&&b!=min(a,min(b,c)))ans++;
        a=b;b=c;
    }
    cout<<ans;
    return 0;
}
```