classSolution { public: vector<int> maxSlidingWindow(vector<int> &nums, int k){ int n = nums.size(); vector<int> res; deque<int> dp; for (int i = 0; i < n; i++) { if (!dp.empty() && dp.front() < i - k + 1) { dp.pop_front(); }
while (!dp.empty() && nums[dp.back()] < nums[i]) { dp.pop_back(); } dp.push_back(i);