#include <bits/stdc++.h>
using namespace std;
const int inf = (int)1e9;
const long long llinf = (long long)3e18;
const int N = (int)1e5 + 111;
const long double PI = (long double)acos(-1);
int main() {
  int n, cur, num, ans = 0;
  scanf("%d", &n);
  vector<int> a(n);
  vector<char> us(n, 0);
  for (int i = 0; i < n; i++) scanf("%d", &a[i]);
  sort(a.begin(), a.end());
  for (int i = 0; i < n; i++)
    if (us[i] == 0) {
      cur = i;
      num = 0;
      while (cur < n) {
        if (us[cur] == 1 || a[cur] < num)
          cur++;
        else {
          num++;
          us[cur] = 1;
        }
      }
      ans++;
    }
  printf("%d", ans);
  return 0;
}
