#include <bits/stdc++.h>
using namespace std;
struct st {
  int x, y;
};
int n;
vector<st> a(1);
int ans = 0;
void dfs(int i, int t) {
  if (i < n - 1) {
    if (t == 0) {
      if (a[i + 1].x > a[i].x)
        dfs(i + 1, 1);
      else {
        ans++;
        dfs(i + 1, 3);
      }
    } else if (t == 1) {
      if (a[i + 1].y > a[i].y) {
        ans++;
        dfs(i + 1, 0);
      } else
        dfs(i + 1, 2);
    } else if (t == 2) {
      if (a[i + 1].x > a[i].x) {
        ans++;
        dfs(i + 1, 1);
      } else
        dfs(i + 1, 3);
    } else {
      if (a[i + 1].y > a[i].y)
        dfs(i + 1, 0);
      else {
        ans++;
        dfs(i + 1, 2);
      }
    }
  }
}
int main() {
  ifstream fi("input.txt");
  cin >> n;
  a.resize(n);
  for (int i = 0; i < n; i++) {
    cin >> a[i].x >> a[i].y;
  }
  dfs(1, 0);
  cout << ans;
}
