#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  auto start = chrono::high_resolution_clock::now();
  long long n, m = 0, d = 0, mx = 1e18, h = 0, l = 0, mn = 1e9, v = 0, w = 0,
               u = 0, r = 0, k = 0, j = 0, i = 0, ans;
  cin >> n;
  vector<int> a(n);
  for (auto &x : a) cin >> x;
  sort(a.begin(), a.end());
  bool b[n];
  for (int i = 0; i < n; i++) b[i] = false;
  for (int i = 0; i < n; i++) {
    if (b[i]) continue;
    h++;
    l = 1;
    a[i] = true;
    for (int j = i + 1; j < n; j++) {
      if (b[j]) continue;
      if (l <= a[j]) l++, b[j] = true;
    }
  }
  cout << h << endl;
  auto end = chrono::high_resolution_clock::now();
  auto duration = chrono::duration_cast<chrono::microseconds>(end - start);
}
