알고리즘/프로그래머스
프로그래머스-level2-탑
송민준
2019. 11. 26. 14:05
https://programmers.co.kr/learn/courses/30/lessons/42588
처음에는 이해가 잘 안갔던 문제...
모든 송신탑에서는 1회의 송신을 한다는 것만 생각하면 될듯...!
배열 뒤에서부터 하나씩 다 비교를 해서 높이가 높을 때만 answer에다가 값을 넣어주는데
값이 j+1 이라는게 키 포인트이다.
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;
}
}