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
33
#include "bits/stdc++.h"

using namespace std;

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);
    
    int n; cin >> n;
    vector<int> lb_wyst(n);
    for(auto a : lb_wyst) {
        cin >> a;
        lb_wyst[a-1]++;
    }

    priority_queue<int> lb_wyst_bez_zer;
    for(auto a : lb_wyst) lb_wyst_bez_zer.push(a);

    int res=0;
    int used=0;
    while(lb_wyst_bez_zer.size()) {
        int tmp = lb_wyst_bez_zer.top();
        lb_wyst_bez_zer.pop();
        used += 2*tmp-1;
        res++;
        if(used >= n)
            break;
    }

    cout << res << '\n';
    
    return 0;
}