#include <bits/stdc++.h>
using namespace std;
long long ans, maks = -1, data[100005], n;
int main() {
  cin >> n;
  for (long i = 1; i <= n; i++) {
    cin >> data[i];
  }
  long i = 1;
  if (n > 2) {
    while (i <= n - 2) {
      if ((i != data[i]) && (i + 1 != data[i + 1]) && (i + 2 != data[i + 2])) {
        i++;
        continue;
      } else {
        if ((i == data[i]) && (i + 1 != data[i + 1]) &&
            (i + 2 != data[i + 2])) {
          ans += 1;
        } else if ((i == data[i]) && (i + 1 == data[i + 1]) &&
                   (i + 2 != data[i + 2])) {
          ans += 2;
        } else if ((i == data[i]) && (i + 1 == data[i + 1]) &&
                   (i + 2 == data[i + 2])) {
          ans += 2;
        } else if ((i != data[i]) && (i + 1 == data[i + 1]) &&
                   (i + 2 == data[i + 2])) {
          ans += 2;
        } else if ((i != data[i]) && (i + 1 == data[i + 1]) &&
                   (i + 2 != data[i + 2])) {
          ans += 1;
        } else if ((i == data[i]) && (i + 1 != data[i + 1]) &&
                   (i + 2 == data[i + 2])) {
          ans += 2;
        } else if ((i != data[i]) && (i + 1 != data[i + 1]) &&
                   (i + 2 == data[i + 2])) {
          ans += 1;
        }
        i += 3;
      }
    }
  } else if (n = 2) {
    if (1 != data[1] && 2 != data[2]) {
      ans = 0;
    } else {
      ans++;
    }
  }
  cout << ans << endl;
}
