vector<int> solve(int n, vector<int> nums, int k, int q, vector<int> queries) {
vector<int> dp = nums; // Initialize dp array with the same values as nums
for (int i = 0; i < n; ++i) {
// Look back at the previous k indices
for (int j = max(0, i - k); j < i; ++j) {
dp[i] = max(dp[i], dp[j] + nums[i]);
}
}
// Prepare the results for each query
vector<int> results;
for (int query : queries) {
results.push_back(dp[query - 1]);
}
return results;
}