#include <bits/stdc++.h>
using namespace std;
vector <int> solve(vector<int> A)
{
    bool f=true;
    int n=A.size();
    for (int i=0; i<n; i++)
    {
        if (A[i]!=(1<<i))
        {
            f=false; break;
        }
    }
    if (f)
    {
        return {n-1};
    }
    else
    {
        vector <pair<int, int>> niz(n);
        map <int, int> cnter;
        for (int i=0; i<n; i++)
        {
            niz[i]={A[i], i};
            cnter[A[i]]++;
        }
        sort (niz.begin(), niz.end());
        vector <int> ans;
        int cnt=0;
        for (int i=0; i<n; i++)
        {
            cnt++;
            if (cnt<=cnter[niz[i].first]/2) ans.push_back(niz[i].second);
            else cnt=0;
        }
        return ans;
    }
}