Esta pregunta es muy simple y no involucra algoritmos.
#include<iostream>
using namespace std;
int main()
{
int n, a[1000] = {
0 };
cin >> n;
for (int i = 0; i < n; i++) {
cin >> a[i];
}
int count = 0;
for (int i = 1; i < n-1; i++) {
if ((a[i] > a[i - 1] && a[i] > a[i + 1]) || (a[i]<a[i - 1] && a[i]<a[i + 1]))
count++;
}
cout << count << endl;
system("pause");
return 0;
}