1class Solution {2public:3int minSetSize(vector<int> &arr) {4const int n = 1e5 + 10;5int a[n] = {0};6for (int i = 0; i < arr.size(); i++) {7a[arr[i]]++;8}9priority_queue<int> maxh;10for (int i = 0; i < n; i++) {11maxh.push(a[i]);12}13int sum = 0;14int count = 0;1516while (sum < (arr.size() / 2)) {17sum = sum + maxh.top();18maxh.pop();19count++;20}21return count;22}23};