#include<bits/stdc++.h>
#define ll long long
#define itn int
using namespace std;
bool a[300001];
int cao,n;
int main()
{
int flag=0;
cin>>n>>cao;
for(int i=1;i<=n;i++)
cin>>a[i];
int ans=0,mans=0,ml,mr,l=1,r=1;
for(;r<=n;r++)
{
// cout<<l<<' '<<r<<' '<<flag<<endl;
if(a[r]==0)
flag++;
if(flag>cao)
{
/* cout<<mans<<' '<<ans;*/
mans=ans;
ans=max(ans,r-l);
if(ans!=mans)
{ml=l;mr=r-1;}
while(a[l]!=0)
l++;
l++;
flag--;
}
}
mans=ans;
ans=max(ans,r-l);
if(mans!=ans)
{
ml=l;mr=r-1;
}
//cout<<ml<<' '<<mr<<endl;
cout<<ans<<endl;
for(;ml<=mr;ml++)
{
a[ml]=1;
}
for(int i=1;i<=n;i++)
cout<<a[i]<<' ';
return 0;
}