#include #include #include #include #include #include #include #include #include #include #include #include #include #define all(x) (x).begin(),(x).end() #define rall(x) (x).rbegin(),(x).rend() using namespace std; typedef long long ll; typedef pair pi; typedef pair pl; typedef pair pls; queue q; int main() { int T; cin >> T; for (int i = 0; i < T; i++) { int N; cin >> N; vector L(N); ll sum = 0; map m; for (int j = 0; j < N; j++) { cin >> L[j]; sum += L[j]; m[L[j]]++; } priority_queue pq; for (auto j : m) { pq.push(j.second); } if (m.size() < 3) { cout << 0 << endl; continue; } int ans = 0; while (1) { int a = pq.top(); pq.pop(); int b = pq.top(); pq.pop(); int c = pq.top(); pq.pop(); if (c <= 0) { break; } ans++; pq.push(a - 1); pq.push(b - 1); pq.push(c - 1); } cout << ans << endl; } return 0; }