<Problem>
https://oj.vnoi.info/problem/amsseq
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int n, k;
cin >> n >> k;
int* arr = new int[n + 1];
int* f = new int[n + 1]{ 0 };
for (int i = 1; i <= n; i++) {
cin >> arr[i];
}
arr[0] = 0;
f[0] = 0;
int result = 0;
for (int i = 1; i <= n; i++) {
int r = -2147483647 - 1;
for (int j = 1; j <= k; j++) {
if (i - j >= 0) {
//f[i] = max(f[i], f[i - j] + arr[i]);
r = max(r, f[i - j]);
f[i] = r + arr[i];
result = max(result, f[i]);
}
}
}
/*for (int i = 1; i <= n; i++) {
cout << f[i] << " ";
}*/
cout << endl;
cout << result;
return 0;
}