💬 문제 설명
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.
🚫 제한 사항
- 중복된 원소는 없습니다.
- 1 ≤ emergency의 길이 ≤ 10
- 1 ≤ emergency의 원소 ≤ 100
📢 입출력 예
👨🏫 입출력 예 설명
📃 제출 코드
import java.util.Arrays;
import java.util.Collections;
class Solution {
public int[] solution(int[] emergency) {
int[] answer = new int[emergency.length];
int[] order = Arrays.stream(emergency)
.boxed()
.sorted(Collections.reverseOrder())
.mapToInt(i -> i)
.toArray();
int index = 0;
for (int i = 0; i < emergency.length; i++) {
for (int j = 0; j < order.length; j++) {
if (emergency[i] == order[j]) {
answer[index] = j + 1;
index++;
}
}
}
return answer;
}
}
✏ 해결방법 & 배운점
` emergency` 배열을 내림차순으로 정렬하여 각 요소의 순위를 매기는 방식으로 문제를 해결하였습니다.
각 요소의 순위는 order 배열에서의 위치를 기반으로 하여 answer 배열에 저장합니다.
'PS > 프로그래머스 입문 100제' 카테고리의 다른 글
[프로그래머스] LV.0 컨트롤 제트 - 자바 [71/100] (0) | 2024.06.28 |
---|---|
[프로그래머스] LV.0 7의 개수 - 자바 [70/100] (0) | 2024.06.28 |
[프로그래머스] LV.0 한 번만 등장한 문자 - 자바 [68/100] (0) | 2024.06.26 |
[프로그래머스] LV.0 가까운 수 - 자바 [67/100] (0) | 2024.06.26 |
[프로그래머스] LV.0 K의 개수 - 자바 [66/100] (0) | 2024.06.26 |