Strong Root

난이도 

 

문제를 보시려면 여기를 클릭

 

 

 

힌트

탑 문제와 완전히 동일한 로직으로 Queue를 쓰지 않고 구현했습니다.

왜 필요한지 잘 모르겠네요...?;;

코드 짧게 빠르게 풀긴 했는데 O(n^2)이라 찝찝합니다.

더 좋은 로직 아시는 분은 공유 부탁드립니다.

 

 

 

이하는 코드입니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class Solution {
    public int[] solution(int[] prices) {
        int[] answer = new int[prices.length];
        answer[answer.length - 1= 0// always 0
 
        for (int i = 0; i < prices.length - 1; i++) {
            int sec = 1;
 
            for (int j = i + 1; j < prices.length - 1; j++) {
                if (prices[j] >= prices[i]) {
                    sec++;
                } else {
                    break;
                }
            }
 
            answer[i] = sec;
        }
 
        return answer;
    }
}
cs