#include #define rep(i,n) for(int i=0;i<(n);i++) using namespace std; const int INF=1<<29; int main(){ int n,m; scanf("%d%d",&n,&m); vector a(n); rep(i,n) scanf("%d",&a[i]); if(m==0) return puts("0"),0; // 頂点 0 を選ばない static int dp1[3000][3001][2]; rep(i,n) rep(j,m+1) rep(k,2) dp1[i][j][k]=-INF; dp1[0][0][0]=0; for(int i=1;i