
https://school.programmers.co.kr/learn/courses/30/lessons/154539
function solution(numbers) {
let arr = new Array(numbers.length).fill(-1);
let stack = [];
for(let i=0; i<numbers.length;i++){
let num = numbers[i];
while(stack && numbers[stack.at(-1)]<numbers[i]){
arr[stack.pop()] = num
}
stack.push(i);
}
return arr;
}
for문을 돌며 stack의 마지막 값과 현재 값을 비교한다.
현재 값이 더 클 경우, pop 해주며 현재값을 arr 에 추가한다.
while 문에 위배되지 않으면 stack에 그대로 넣는다.