Language: C++

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

using ll=long long;

int main(){
    int n;
    cin>>n;
    vector<ll> a(n);
    for(int i=0;i<n;i++) cin>>a[i];
    ll oddSum=0;
    ll eveSum=0;
    for(int i=0;i<n;i++){
        if(i%2){
            if(a[i]>0) oddSum+=a[i];
        }
        else{
            if(a[i]>0) eveSum+=a[i];
        }
    }
    if(a.size()==1 || (oddSum==0 && eveSum==0)){
        auto iter=max_element(a.begin(),a.end());
        int index=(iter-a.begin());
        cout<<*iter<<endl;
        cout<<n-1<<endl;
        for(int i=n;i>index+1;i--){
            cout<<i<<endl;
        }
        for(int i=1;i<index+1;i++){
            cout<<1<<endl;
        }
    }
    else if(eveSum>oddSum){
        vector<int> ans;
        while(a.size()>1){
            if(a.size()==2){
                ans.push_back(2);
                a.pop_back();
                break;
            }
            else if(a.size()==3){
                if(a[0]<0){
                    ans.push_back(1);
                    a.erase(a.begin());
                }
                else if(a[2]<0){
                    ans.push_back(3);
                    a.erase(a.begin()+2);
                }
                else{
                    ans.push_back(2);
                    break;
                }
            }
            else{
                if(a[0]<0){
                    <.push_back(1);
                    ans.push_back(1);
                }
                else if(a[2]<0){
                    ans.push_back(3);
                    ans.push_back(2);
                }
                else{
                    ans.push_back(2);
                    ll val=a[0]+a[2];
                    a.erase(a.begin(),a.begin()+3);
                    a.insert(a.begin(),val);
                }
            }
        }
        cout<<eveSum<<endl;
        cout<<ans.size()<<endl;
        for(int i=0;i<ans.size();i++){
            cout<<ans[i]<<endl;
        }
    }
    else{
        vector<int> ans;
        a.erase(a.begin());
        ans.push_back(1);
        while(a.size()>1){
            if(a.size()==2){
                ans.push_back(2);
                a.pop_back();
            }
            else if(a.size()==3){
                if(a[0]<0){
                    ans.push_back(1);
                    ans.push_back(1);
                }
                else if(a[2]<0){
                    ans.push_back(3);
                    ans.push_back(2);
                }
                else{
                    ans.push_back(2);
                    break;
                }
            }
            else{
                if(a[0]<0){
                    ans.push_back(1);
                    a.erase(a.begin());
                }
                else if(a[2]<0){
                    ans.push_back(3);
                    a.erase(a.begin()+1,a.begin()+4);
                    a.insert(a.begin()+1,114514);
                }
                else{
                    ans.push_back(2);
                    ll val=a[0]+a[2];
                    a.erase(a.begin(),a.begin()+3);
                    a.insert(a.begin(),val);
                }
            }
        }
        cout<<oddSum<<endl;
        cout<<ans.size()<<endl;
        for(int i=0;i<ans.size();i++){
            cout<<ans[i]<<endl;
        }
    }
    return 0;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:57:21: error: expected primary-expression before '<' token
   57 |                     <.push_back(1);
      |                     ^
a.cc:57:22: error: expected primary-expression before '.' token
   57 |                     <.push_back(1);
      |                      ^