1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <bits/stdc++.h>

using namespace std;

int main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);	

	vector <int> cnt;
	int n, res, left; cin >> n;
	cnt.assign(n + 1, 0);

	for (int i = 0; i < n; i++) {
		int x; cin >> x;
		cnt[x]++;
	}

	sort(cnt.begin(), cnt.end());

	left = n; res = 0;
	for (int i = n; i >= 0; i--) {
		if (left > 0) {
			res += 1;
			left -= ((2 * cnt[i]) - 1);
		}
	}

	cout << res << endl;
	
	return 0;
}