#include"bits/stdc++.h"
using namespace std;
#define int long long
#define S second
#define F first
const int mxn=10005;
const int mxk=205;
int a[mxn],p[mxn],dp[mxn][mxk],pr[mxn][mxk];
signed main(){
cin.tie(0)->sync_with_stdio(0);
int n,k;
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>a[i];
p[i]=p[i-1]+a[i];
}
for(int j=1;j<=k;j++){
for(int i=j+1;i<=n;i++){
for(int l=j;l<i;l++){
dp[i][j]=max(dp[i][j],dp[l][j-1]+(p[i]-p[l])*p[l]);
}
for(int l=j;l<i;l++){
if(dp[i][j]==dp[l][j-1]+(p[i]-p[l])*p[l]){
pr[i][j]=l;
break;
}
}
}
}
cout<<dp[n][k]<<'\n';
vector<int>v;
while(k){
v.push_back(pr[n][k]);
n=pr[n][k];
k--;
}
sort(v.begin(),v.end());
for(int i:v)cout<<i<<' ';
}