#include<iostream>
using namespace std;
int n,k,f[1005][33][4],a[1005];
int main()
{
scanf("%d%d",&n,&k);
for(int i=1;i<=n;i++)scanf("%d",&a[i]);
f[0][0][2]=-100;
for(int i=1;i<=n;i++)
{
for(int j=0;j<=k;j++)
{
f[i][j][1]=max(f[i-1][j][1],f[i-1][j-1][2])+(a[i]==1);
f[i][j][2]=max(f[i-1][j][2],f[i-1][j-1][1])+(a[i]==2);
}
}
printf("%d",max(f[n][k][1],f[n][k][2]));
return 0;
}
记录