Max Value of Equation LeetCode solution in C++
1class Solution {2public:3int findMaxValueOfEquation(vector<vector<int>> &points, int k) {4deque<pair<int, int>> dq;5int res = -INT_MAX;6for (auto point : points) {7while (!dq.empty() && point[0] - dq.front().second > k) {8dq.pop_front();9}10if (!dq.empty()) {11res = max(res, dq.front().first + point[0] + point[1]);12}13while (!dq.empty() && point[1] - point[0] >= dq.back().first) {14dq.pop_back();15}16dq.push_back({point[1] - point[0], point[0]});17}18return res;19}20};