#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; long long MOD = 1000000007; int main() { int T; cin >> T; vector Ans; int N; for ( int i = 0; i < T; i++ ) { int ans = 0; cin >> N; vector L(N); for ( int j = 0; j < N; j++ ) { cin >> L[j]; } sort( L.begin(), L.end() ); int cnt = 1; priority_queue A; for ( int j = 1; j < N; j++ ) { if ( L[j] == L[j-1] ) { cnt++; } else { A.push(cnt); cnt = 1; } } A.push(cnt); while ( A.size() >= 3 ) { ans++; int a[3]; for (int j = 0; j < 3; j++ ) { a[j] = A.top() - 1; A.pop(); } for (int j = 0; j < 3; j++ ) { if ( a[j] != 0 ) { A.push( a[j] ); } } } Ans.push_back(ans); } for ( int i = 0; i < T; i++ ) { cout << Ans[i] << endl; } return 0; }