#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int n, k; vector costs; long long bruteforce(int bulb) { if (bulb >= costs.size()) return 0; long long minCost = INT_MAX; for (int i = max(bulb - k, 0); i <= min(n - 1, bulb + k); i++) { long long cost = costs[i] + bruteforce(i + k + 1); if (cost < minCost) minCost = cost; } return minCost; } int main() { ios::sync_with_stdio(false); cin >> n >> k; costs.resize(n); for (int i = 0; i < n; i++) cin >> costs[i]; cout << bruteforce(0) << endl; return 0; }