#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, tmp;
  cin >> n;
  multiset<int> a;
  for (int i = 0; i < n; i++) {
    cin >> tmp;
    a.insert(tmp);
  }
  int ans = 0;
  while (!a.empty()) {
    int h = 0;
    while (a.lower_bound(h) != a.end()) {
      a.erase(a.lower_bound(h));
      h++;
    }
    if (h) ans++;
  }
  cout << ans << endl;
  return 0;
}
