#include <bits/stdc++.h>
using namespace std;
#define int long long int
#define p 1000000007
void solve() {
int n, k;
cin >> n >> k;
vector<int> a(n);
for (int &i : a)
cin >> i;
vector<vector<int>> next(k + 1, vector<int> (2, 0));
for (int i = n - 1 ; i >= 0 ; i--) {
vector<vector<int>> cur(k + 1, vector<int> (2, 0));
for (int j = k ; j >= 0 ; j--) {
for (int r = 0 ; r < 2 ; r++) {
if (j + 1 <= k) cur[j][r] = max(cur[j][r], a[i] + next[j + 1][1]);
cur[j][r] = max(cur[j][r], next[j][0]);
if (r) cur[j][r] = max(cur[j][r], a[i] + next[j][1]);
}
}
next = cur;
}
cout << next[0][0] << endl;
}
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout << setprecision(10);
// int t;
// cin >> t;
// while (t--)
solve();
cerr << "time taken : " << (float)clock() / CLOCKS_PER_SEC << " secs" << endl;
}