#include <bits/stdc++.h>
using namespace std;
int dp[1015][1015],n,m,a[1111][1111],b[1111][1111];
int show(int i,int j){
if(!i)return 0;
show(i-1,b[i][j]-1);
cout<<b[i][j]<<" ";
}
int main(){
cin>>n>>m;
memset(dp,0xc0,sizeof(dp));
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
dp[0][j]=0;
}
}
dp[0][0]=0;
for(int i=1;i<=n;i++){
for(int j=i;j<=m-n+i;j++){
if(dp[i][j-1]<dp[i-1][j-1]+a[i][j]){
dp[i][j]=dp[i-1][j-1]+a[i][j];
b[i][j]=j;
}
else{
dp[i][j]=dp[i][j-1];
b[i][j]=b[i][j-1];
}
}
}
cout<<dp[n][m]<<endl;
show(n,m);
}