#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
#define MAXM 110
#define MAXN 10010
#define INF 0x7fffffff
int main() {
int n, m, k, a[MAXN], f[MAXN][MAXM];
for (int i = 0; i < n; ++i)
cin >> a[i];
memset(f, 128, sizeof(f));
for (int i = 0; i <= n; ++i)
f[i][0]=0;
for (int i=1; i<=n; ++i)
for (int j=1; j<=m; ++j) {
f[i][j] = f[i-1][j];
if (i >= k) f[i][j] = f[i-k][j-1] + a[i];
if (j == 1) f[i][j] = f[i-1][j-1] + a[i];
}
int max = -INF;
for (int i=0; i<=n; ++i)
max = f[i][m];
cout << max;
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGNzdHJpbmc+CiNpbmNsdWRlPGFsZ29yaXRobT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIE1BWE0gMTEwCiNkZWZpbmUgTUFYTiAxMDAxMAojZGVmaW5lIElORiAweDdmZmZmZmZmCgppbnQgbWFpbigpIHsKCWludCBuLCBtLCBrLCBhW01BWE5dLCBmW01BWE5dW01BWE1dOwoKICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyArK2kpCiAgICAgICAgY2luID4+IGFbaV07ICAgCiAgICAgIG1lbXNldChmLCAxMjgsIHNpemVvZihmKSk7CiAgICAgIGZvciAoaW50IGkgPSAwOyBpIDw9IG47ICsraSkKICAgICAgICBmW2ldWzBdPTA7CiAgICAgIGZvciAoaW50IGk9MTsgaTw9bjsgKytpKQogICAgICAgIGZvciAoaW50IGo9MTsgajw9bTsgKytqKSB7CiAgICAgICAgICAgIGZbaV1bal0gPSBmW2ktMV1bal07CiAgICAgICAgICAgIGlmIChpID49IGspIGZbaV1bal0gPSBmW2kta11bai0xXSArIGFbaV07CiAgICAgICAgICAgIGlmIChqID09IDEpIGZbaV1bal0gPSBmW2ktMV1bai0xXSArIGFbaV07CiAgICAgICAgfQogICAgICBpbnQgbWF4ID0gLUlORjsKICAgICAgZm9yIChpbnQgaT0wOyBpPD1uOyArK2kpCiAgICAgICAgbWF4ID0gZltpXVttXTsKICAgICAgY291dCA8PCBtYXg7IAoKCXJldHVybiAwOwp9