자바스크립트 주식가격

이진우·2023년 12월 8일
0

문제 설명

초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요.

제한사항

prices의 각 가격은 1 이상 10,000 이하인 자연수입니다.
prices의 길이는 2 이상 100,000 이하입니다.

입출력 예

prices return
[1, 2, 3, 2, 3][4, 3, 1, 1, 0]

function solution(prices) {
    var answer = [];
    
    prices.forEach((value, index) => {
        let check = 0;
        for (let i = index; i < prices.length - 1; i++) {
            if (value <= prices[i + 1]) {
                check += 1
            } else {
                check += 1
                break;
            }
        }    
        answer.push(check);
    })
    
    return answer;
}
  1. prices의 배열순서대로 자신을 제외한 다음값부터 끝의 값까지 순서대로 계속 비교한다
  2. 크기가 같거나 클경우는 check의 값을 더하고(비교대상의 값보다 낮아지지 않았기 때문) 계속 순회를 이어가고 값이 작아질경우 check에 값을 더한후 반복문을 멈추고(크기가 작아졌으니 현재 인덱스까지 더해준후 종료) 다음값을 다시 계산한다
profile
초보개발자의 개발일기

0개의 댓글