Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- typedef long long ll;
- int main()
- {
- int q;
- ios::sync_with_stdio(0);
- cin.tie(nullptr);
- cin >> q;
- for (int i = 0; i < q; ++i) {
- int n;
- cin >> n;
- vector <int> cnt(n + 1, 0);
- int x;
- for (int i = 0; i < n; ++i) {
- cin >> x;
- ++cnt[x];
- }
- vector <int> unused;
- for (int i = 0; i <= n; ++i) {
- if (cnt[i] != 0) {
- unused.push_back(cnt[i]);
- }
- }
- sort(unused.rbegin(), unused.rend());
- ll ans = 0;
- int arrp = 0, digp = n;
- while (digp != 0 && arrp != unused.size()) {
- if (digp <= unused[arrp]) {
- ans += digp;
- --digp;
- ++arrp;
- }
- else {
- --digp;
- }
- }
- cout << ans << "\n";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement