#include "partition.h"
#include <bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define pb push_back
//#define int long long

std::vector<int> solve(std::vector<int> A){
    int n=A.size();
    vector <int> vec;
    vector <pair <int,int> > a(n+5);
    vector <long long> pref(n+5,0);
    for(int i=1;i<=n;i++){
        a[i].ff=A[i-1];
        a[i].ss=i-1;
        pref[i]=pref[i-1]+a[i].ff;
    }
    int idx=(n/2);
    for(int i=(n/2);i<=n;i++){
        if(pref[i]-pref[i-(n/2)]>=(pref[n]+1)/2 and pref[i-1]-pref[i-(n/2)]<(pref[n]+1)/2){
            idx=i;
        }
    }
    for(int i=idx-(n/2)+1;i<=idx;i++){
        vec.pb(a[i].ss);
    }
    for(int i=1;i<=idx-(n/2);i++){
        vec.pb(a[i].ss);
    }
    for(int i=idx+1;i<=n;i++){
        vec.pb(a[i].ss);
    }
    return vec;
    
}
// int main () {
//     ios_base::sync_with_stdio(false);
//     cin.tie(NULL);
//     int t;
//     cin >> t ;
//     for (int test=1; test<=t; test++) {
//         int n;
//         cin >> n ;
//         vector <int> a(n);
//         for (int i=0; i<n; i++) {
//             cin >> a[i] ;
//         }

//         for (auto ind : solve(a)) {
//             cout << ind << " ";
//         }
//         cout << endl ;
//     }
//     cout << endl ;
//     return 0;
// }
