You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.8 KiB

2 years ago
#include <bits/stdc++.h>
using namespace std;
int n;
const int N = 2e5 + 10;
int a[N];
int ans; // 组数
int cnt; // 当前组内人数
/*
Q:?
A:
3
1 2 2
: 1 2 2
1a[1]=1,,ans++,ans=1,1
2a[1]=2,211
3a[2]=2,,3,
:
12e5,O(N^2)O(NlogN)O(N) O(logN)
2
(3)
*/
int main() {
freopen("T3707.in", "r", stdin);
// freopen("T3707.out", "w", stdout);
cin >> n;
for (int i = 1; i <= n; i++) cin >> a[i];
// 由小到大排序
sort(a + 1, a + 1 + n);
for (int i = 1; i <= n; i++) {
cnt++; // 当前组人数+1
if (cnt >= a[i]) ans++, cnt = 0; // 成功完成一个成班清空下一组人数为0
}
cout << ans << endl;
return 0;
}