초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요.
function solution(prices) {
let answer = [];
let priceStack = [];
let priceLength = prices.length - 1;
prices.map((price, index) => {
while (
priceStack.length > 0 &&
priceStack[priceStack.length - 1][0] > price
) {
let popItem = priceStack.pop();
answer[popItem[1]] = index - popItem[1];
}
priceStack.push([price, index]);
});
if (priceStack.length > 0) {
priceStack.map((price) => {
answer[price[1]] = priceLength - price[1];
});
}
return answer;
}
prices.map((price, index) => {
while (
priceStack.length > 0 &&
priceStack[priceStack.length - 1][0] > price
) {
let popItem = priceStack.pop();
answer[popItem[1]] = index - popItem[1];
}
priceStack.push([price, index]);
});
if (priceStack.length > 0) {
priceStack.map((price) => {
answer[price[1]] = priceLength - price[1];
});
}