區間極值

View as PDF

Submit solution

Points: 100 (partial)
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type

給定長度為n的陣列a。並定義區間極值的條件為:\(a_i\)左右的那兩個數字(\(a_{i-1}\)和\(a_{i+1}\))必須同時大於自己或是小於自己,也就是\(a_{i}<a_{i-1} \land a_i<a_{i+1}\)或\(a_i>a_{i-1} \land a_i>a_{i+1}\) \((1<i<n)\) 。
請你幫忙找出有幾個「區間極值」。

Input

第一行輸入為\(n\)。
第二行有\(n\)個數字,分別是\(a_1, a_2, a_3 ... a_n\)。

Output

請輸出總共有幾個區間極值。

Constraints

第 \(1\) 組測資, \(n\leq10^2\), \(a_i \leq10^6\)。 \((40\text{%})\)

第 \(2\) 組測資, \(n\leq10^6\), \(a_i \leq 10^{18}\)。\((50\text{%})\)

第 \(3\) 組測資, \(n \leq 10^2\), \(a_i \leq 10^{37}\)。\((10\text{%})\)

PS: 所有數字均為自然數。

Sample Input
6
1 3 5 2 3 4
Sample Output
2

Hint:

  1. 因測資數量大,請善加利用scanf(), printf()。若使用cin,則需要用到輸入優化。
  2. stringint128是個好東西。

Comments

There are no comments at the moment.