class Solution { public: vector<int> temperatures(vector<int>& dailyTemperatures) { int size = dailyTemperatures.size(); vector<int> ans(size); stack<int> stk; //从后往前遍历,栈往里单调递增 for(int i=size-1; i>=0; i--){ while(!stk.empty() && dailyTemperatures[i] >= dailyTemperatures[stk.top()]){ stk.pop(); } if(!stk.empty()){ ans[i] = stk.top() - i; } stk.push(i); } return ans; } };