#include <iostream>
#include <cstring>
using namespace std;
typedef long long ll;
int main()
{
    ll a[1002],b[1002],mmax;
    int m[1002];
    int tmp,n,p,cnt,fnt=1;
    cin>>n;
    for(int i=1; i<=n; i++)
        cin>>a[i];
    tmp=n,mmax=a[1];
    while(tmp>=3)
    {
        cnt=1;
        p=0;
        for(int i=1; i<=tmp-2; i++)
        {
            if(a[i]+a[i+2]>mmax)
                mmax=a[i]+a[i+2],p=i+1;
        }
        if(!p)
        {
            if(mmax==a[1])
            {
                m[fnt++]=2;
                b[cnt++]=a[1];
                for(int i=3; i<=tmp; i++)
                    b[cnt++]=a[i];
            }
            else
            {
                m[fnt++]=1;
                for(int i=2; i<=tmp; i++)
                    b[cnt++]=a[i];
            }
            tmp--;
        }
        else
        {
            m[fnt++]=p;
            for(int i=1; i<p-1; i++)
                b[cnt++]=a[i];
            b[cnt++]=mmax;
            for(int i=p+2; i<=tmp; i++)
                b[cnt++]=a[i];
            tmp-=2;
        }
        for(int i=1; i<cnt; i++)
            a[i]=b[i];
    }
   if(a[1]>a[2])
            m[fnt++]=2,mmax=a[1];
        else
            m[fnt++]=1,mmax=a[2];

    cout<<mmax<<endl;
    for(int i=1; i<fnt; i++)
        cout<<m[i]<<endl;
    return 0;
}
