Constrained Subsequence Sum LeetCode solution in C++

1
class Solution {
2
public:
3
int constrainedSubsetSum(vector<int> &nums, int k) {
4
priority_queue<array<int, 2>> que;
5
int ret = nums[0], curr;
6
que.push({nums[0], 0});
7
for (int i = 1; i < nums.size(); i++) {
8
while (!que.empty() && que.top()[1] < i - k) {
9
que.pop();
10
}
11
curr = max(0, que.top()[0]) + nums[i];
12
ret = max(ret, curr);
13
que.push({curr, i});
14
}
15
return ret;
16
}
17
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0