#include <bits/stdc++.h>
using namespace std;
long long gcd(long long a, long long b) {
  if (b == 0) return a;
  a %= b;
  return gcd(b, a);
}
long long lcm(long long a, long long b) { return a * b / gcd(a, b); }
vector<int> x;
int n;
bool check(int X) {
  int i;
  for (i = 0; i < n; i++)
    if (x[i] < i / X) return false;
  return true;
}
int main() {
  ios_base::sync_with_stdio(false), cin.tie(0);
  int i, r, l, m;
  cin >> n;
  x.resize(n);
  for (i = 0; i < n; i++) cin >> x[i];
  sort(x.begin(), x.end());
  r = n;
  l = 0;
  while (r - l > 1) {
    m = (l + r) / 2;
    if (check(m))
      r = m;
    else
      l = m;
  }
  cout << r << "\n";
  return 0;
}
