public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int result = 0; // 총 그룹 수
int count = 0; // 현재 그룹에 인원 수
int[] arr = new int[N];
for(int i=0; i<arr.length; i++) {
arr[i] = sc.nextInt();
}
/*
공포도를 오름차순으로 정렬
공포도가 낮은 순서대로 먼저 그룹화하는 것이
최대 그룹 개수를 만들 수 있다.
*/
Arrays.sort(arr);
for(int i=0; i<arr.length; i++) {
count++; // 인원 카운트
if(arr[i] <= count) { // 현재 공포도 기준으로 작거나 같을 경우
result++; // 그룹 카운팅
count = 0; // 공포도 초기화
}
}
System.out.println(result);
}
}