#include <bits/stdc++.h>
using namespace std;
long long k, i, v1, s2, t, n, a[100100];
map<long long, long long> us;
int main() {
  cin >> n;
  if (n == 1) {
    cout << 1;
    return 0;
  }
  for (i = 0; i < n; i++) {
    cin >> a[i];
    if (a[i] == i)
      k++;
    else
      us[a[i]] = i;
  }
  if (k == n) {
    cout << k;
    return 0;
  }
  v1 = 1;
  for (i = 0; i < n; i++)
    if (us[a[i]] == us[us[i]] && us[a[i]] && us[us[i]]) {
      v1 = 2;
      break;
    }
  cout << k + v1;
  return 0;
}
