import java.util.*;


public class Solution {
    public int[] temperatures (int[] dailyTemperatures) {
        int lens=dailyTemperatures.length;
        int[] res=new int[lens];
        Deque<Integer> stack=new LinkedList<>();
        for(int i=0;i<lens;i++){
            while(!stack.isEmpty()&&dailyTemperatures[i]>dailyTemperatures[stack.peek()]){
                res[stack.peek()]=i-stack.peek();
                stack.pop();
            }
            stack.push(i);
        }
        return res;
    }
}