#include <bits/stdc++.h>
using namespace std;
vector<int> solve(std::vector<int> A){
int n =A.size();
int gsum=0;
map<int,int> mp;
map<int,int> m;
for(int i=0; i<n; i++){
    gsum+=A[i];
    mp[A[i]]++;
    m[A[i]]++;
}
int sum=0;
vector<int> p;
set<int> s;
for(int i =0; i<n; i++){
    if(sum>=gsum/2){
        break;
    }
    if(m[A[i]] > mp[A[i]]/2){
        sum+=A[i];
        p.push_back(i);
        s.insert(s);
        m[A[i]]--;
    }
}
for(int i =0; i<n; i++){
    if(!s.count(i)) {
        s.insert(i);
        p.push_back(i);
    }
}
return p;
}