#include <bits/stdc++.h>
using namespace std;
int main() {
  int a, b;
  cin >> a;
  for (int i = 0; i < a; i++) {
    vector<int> store1;
    map<int, int> store;
    map<int, int>::iterator it;
    cin >> b;
    int c;
    for (int i = 0; i < b; i++) {
      cin >> c;
      store[c]++;
    }
    for (it = store.begin(); it != store.end(); it++) {
      store1.push_back(it->second);
    }
    sort(store1.begin(), store1.end(), greater<int>());
    int temp = store1[0];
    int sum = temp;
    for (int i = 1; i < store1.size(); i++) {
      if (temp == 0) {
        break;
      }
      if (store1[i] >= temp) {
        sum = sum + temp - 1;
        temp--;
      } else {
        sum = sum + store1[i];
        temp = store1[i];
      }
    }
    cout << sum << endl;
  }
  return 0;
}
