import java.util.Scanner;

public class Main {

  public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    int[] p = new int[n];
    int ans = 0;

    for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    }

    for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    }

    System.out.println(ans);

  }

  // 3数の中央値を求めるメソッド
  static int med(int a, int b, int c) {
    if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    }
  }

} import java.util.Scanner; Scanner java.util public class Main {

  public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    int[] p = new int[n];
    int ans = 0;

    for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    }

    for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    }

    System.out.println(ans);

  }

  // 3数の中央値を求めるメソッド
  static int med(int a, int b, int c) {
    if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    }
  }

} Main public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    int[] p = new int[n];
    int ans = 0;

    for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    }

    for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    }

    System.out.println(ans);

  } main {

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    int[] p = new int[n];
    int ans = 0;

    for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    }

    for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    }

    System.out.println(ans);

  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc int[] p = new int[n]; p new int[n] n int ans = 0; ans 0 for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
      p[i] = sc.nextInt();
    } {
      p[i] = sc.nextInt();
    } p[i] = sc.nextInt() p[i] p i sc.nextInt() sc.nextInt sc for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    } int i = 0; int i = 0; i 0 i < (n - 2) i (n - 2) n 2 i++ i++ i {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    } {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    } if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      } p[i + 1] == med(p[i], p[i + 1], p[i + 2]) p[i + 1] p i + 1 i 1 med(p[i], p[i + 1], p[i + 2]) med p[i] p i p[i + 1] p i + 1 i 1 p[i + 2] p i + 2 i 2 {
        ans++;
      } ans++ ans System.out.println(ans) System.out.println System.out System System.out ans String[] args args // 3数の中央値を求めるメソッド
  static int med(int a, int b, int c) {
    if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    }
  } med {
    if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    }
  } if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    } a >= b a b {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      } b >= c b c {
        return b;
      } return b; b if (a <= c) {
        return a;
      } else {
        return c;
      } a <= c a c {
        return a;
      } return a; a {
        return c;
      } return c; c if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    } a > c a c {
      return a;
    } return a; a if (b > c) {
      return c;
    } else {
      return b;
    } b > c b c {
      return c;
    } return c; c {
      return b;
    } return b; b int a a int b b int c c public class Main {

  public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    int[] p = new int[n];
    int ans = 0;

    for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    }

    for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    }

    System.out.println(ans);

  }

  // 3数の中央値を求めるメソッド
  static int med(int a, int b, int c) {
    if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    }
  }

} public class Main {

  public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    int[] p = new int[n];
    int ans = 0;

    for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    }

    for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    }

    System.out.println(ans);

  }

  // 3数の中央値を求めるメソッド
  static int med(int a, int b, int c) {
    if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    }
  }

} Main
import java.util.Scanner;

public class Main {

  public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    int[] p = new int[n];
    int ans = 0;

    for (int i = 0; i < n; i++) {
      p[i] = sc.nextInt();
    }

    for (int i = 0; i < (n - 2); i++) {
      if (p[i + 1] == med(p[i], p[i + 1], p[i + 2])) {
        ans++;
      }
    }

    System.out.println(ans);

  }

  // 3数の中央値を求めるメソッド
  static int med(int a, int b, int c) {
    if (a >= b) {
      if (b >= c) {
        return b;
      } else if (a <= c) {
        return a;
      } else {
        return c;
      }
    } else if (a > c) {
      return a;
    } else if (b > c) {
      return c;
    } else {
      return b;
    }
  }

}