Problem description

   given n An integer represents a store n Sales volume per day . If by one day sales were growing , The day after that, sales dropped , This day is called the break point , On the other hand, if the previous sales decrease, the next day sales increase , This day is also called the break point . No other day is a break point .
   given n An integer a1, a2, …, an Represents sales volume , Please calculate the total number of discount points these days .
   In order to reduce ambiguity , Our given data guarantee : Here it is n The sales volume of two consecutive days in a day is always different , Namely ai-1≠ai. be careful , If two days are not adjacent , Sales may be the same .

Input format

   The first line of input contains an integer n.
   The second line contains n An integer , Separate with spaces , Respectively a1, a2, …, an.

Output format

   Output an integer , Indicates the number of break points .

sample input

7
5 4 1 2 3 6 4

sample output

2

Scale and convention of evaluation case

        All evaluation cases meet :1 ≤ n ≤ 1000, The daily sales volume is no more than 10000 Nonnegative integers of .

 
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm>
#include<cmath> using namespace std; const int N=1000+10; int a[N],n; int
main() { scanf("%d",&n); scanf("%d%d",&a[0],&a[1]); int ans=0; for(int
i=1;i<n-1;i++) { scanf("%d",&a[i+1]);
if(a[i]<a[i-1]&&a[i]<a[i+1]||a[i]>a[i-1]&&a[i]>a[i+1]) ans++; }
printf("%d\n",ans); return 0; }
 

 

 

Technology