190103 스택&큐 (6) 주식가격

2019-01-03

스택&큐 (6) 주식가격

문제 설명

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

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

풀이 과정
  • 반복문을 통해 뒤의 값과 비교하면서 가격이 하락하면 반복문 break
  • 두 값의 인덱스 차이가 가격이 유지된 기간임
class Solution {
    public int[] solution(int[] prices) {
        int[] answer = new int[prices.length];
        
        for(int i=0;i<prices.length-1;i++){
            for(int j=i+1;j<prices.length;j++){
                if(prices[j]-prices[i]>=0&& j!=prices.length-1)
                    continue;
                else {
                    answer[i]=j-i;
                    break;
                }
            }
        }
        answer[prices.length-1]=0;
        
        return answer;
    }
}
  • 내가 짜는 알고리즘은 항상 경계값을 깨끗하게 처리하지 못하는듯… 오늘 푼 세문제 모두 그 부분이 약했음