[프로그래머스] 탑

2020. 3. 24. 18:01프로그래머스/LEVEL 2

class Solution {
    public int[] solution(int[] heights) {
        int[] answer = new int[heights.length];
        
        for(int i= heights.length-1; i>0; i--){
            for(int j=i-1; j>=0; j--){
                if(heights[i]<heights[j]){
                    answer[i] = j+1;
                    break;
                }
            }
        }
        
        
        return answer;
    }
}

1. 탑이 오른쪽에서 왼쪽으로 빛을 쏘기 때문에, 본인보다 왼쪽에 있는 탑들중 더 높은 높이가 있다면 그 높이를 answer에 담아주면 된다.

2. 더 높은 탑이 없을경우 0을 answer에 담아야하는데, answer을 초기화 시켜주었으므로 기본값이 0 으로 설정되어 있어서 따로 처리해주지 않아도 되었다.