#include<bits/stdc++.h>
using namespace std;
int n,a[5000050],ans,b[5000050],l,r,c;
int main(){
scanf("%d%d",&n,&n);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
l=1,r=n,c=n;
while(l<=r){
if(a[l]<=a[r]){
b[l]=c;
c--;
ans=max(ans,a[l]+c);
l++;
}
else{
b[r]=c;
c--;
ans=max(ans,a[r]+c);
r--;
}
}
printf("%d\n",ans);
for(int i=1;i<=n;i++) printf("%d ",b[i]);
}