ALGORITHM/PROGRAMMERS

[프로그래머스] 주식가격

0298 2021. 7. 28. 19:36

https://programmers.co.kr/learn/courses/30/lessons/42584

 

코딩테스트 연습 - 주식가격

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

programmers.co.kr

2021-07-28


1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
    public int[] solution(int[] prices) {
      int[] answer = new int[prices.length];
       
        for(int i = 0; i < answer.length; i++) {
            for(int j = i+1; j < answer.length; j++) {
                answer[i]++;
                if(prices[i] > prices[j]) break;
            }
        }
        return answer;
    }
}
cs

 

#문제풀이

내가 언어를 잘못하는건지, 문제 설명이 이상한건지 문제 이해하는데 걸리는 시간이 더 많은 느낌이다. 

 

간단하게 말하면, 지금 현재의 가격에서 떨어지는 가격이 언제 나오냐 인 것이다.

 

prices [1, 2, 3, 2, 3] 인 경우,

1초 시점 ) 1인 가격은 이 이하로는 끝까지 떨어지지 않는다. (5초 - 1초 = 4초)

2초 시점 ) 2인 가격도 이 이하로는 끝까지 떨어지지 않는다. (5초 - 2초 = 3초)

3초 시점 ) 3인 가격은 그 다음 4초 시점에서 떨어진다. (4초 - 3초 = 1초)

4초 시점 ) 4인 가격은 이 이하로는 끝까지 떨어지지 않는다. (5초 - 4초 = 1초)

5초 시점 ) 5인 가격은 이 이하로는 끝까지 떨어지지 않는다. (5초 - 5초 = 0초)