#include <bits/stdc++.h>
//#define int int64_t
using namespace std;

std::vector<int> solve(std::vector<int> A){
    map<int,int> mp, cnt;
    int n = A.size();
    int cur = 0;
    vector<int> a = A;
    for(auto &i : A) cnt[i]++;
    for(int i = 0; i < n; i++){
        if(mp[A[i]] < cnt[A[i]]/2){
            mp[A[i]]++;
            a[i] = cur;
            A[i] = -1;
            cur++;
        } else a[i] = n-cur;
    }
    //for(auto &i : a) cout << i << " ";
    return a;
}

// signed main(){
//     cin.tie(0)->sync_with_stdio(0);
//     int _; cin >> _;
//     while(_--){
//         int n; cin >> n;
//         vector<int> a(n);
//         for(auto &i : a) cin >> i;
//         auto p = solve(a);
//     }
// }