-
[Java 자바] 프로그래머스 Lv 0 - 진료순서 정하기Study/Java 2024. 10. 21. 14:00728x90반응형
목차
1. 문제 설명
728x90문제 설명
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다.
정수 배열 emergency가 매개변수로 주어질 때,
응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.제한사항
- 중복된 원소는 없습니다.
- 1 ≤ emergency의 길이 ≤ 10
- 1 ≤ emergency의 원소 ≤ 100
2. 입출력 예시
입출력 예시
#1
emergency가 [3, 76, 24]이므로 응급도의 크기 순서대로 번호를 매긴 [3, 1, 2]를 return합니다.
#2
emergency가 [1, 2, 3, 4, 5, 6, 7]이므로 응급도의 크기 순서대로 번호를 매긴 [7, 6, 5, 4, 3, 2, 1]를 return합니다.
#3emergency가 [30, 10, 23, 6, 100]이므로 응급도의 크기 순서대로 번호를 매긴 [2, 4, 3, 5, 1]를 return합니다.
3. 문제 풀이
반응형문제 풀이
1. 배열 emergency를 복제하여, answer에 넣는다.
2. answer를 오름차순 정렬한다. (순위 계산을 하기 위해)
3. 이중 for 문을 사용한다.
4. if 문을 사용하여, answer[i]가 emergency[j]와 같다면, 해당 answer[i]에 emergency의 길이에서 j 값을 뺀 수를 넣는다. (순위 넣기)
5. 값을 찾으면, break을 통해 반복을 종료한다.
6. answer를 반환한다.
import java.util.Arrays; class Solution { public int[] solution(int[] emergency) { int[] answer = emergency.clone(); Arrays.sort(answer); for(int i=0; i<emergency.length; i++){ for(int j=0; j<emergency.length; j++){ if(answer[i]==emergency[j]){ answer[i] = emergency.length-(j); break; } } } return answer; } }
메모
clone() : 자신을 복제하여 새로운 인스턴스를 생성한다.
728x90반응형'Study > Java' 카테고리의 다른 글
[Java 자바] 프로그래머스 Lv 0 - 개미 군단 (0) 2024.10.23 [Java 자바] 프로그래머스 Lv 0 - 순서쌍의 개수 (0) 2024.10.22 [Java 자바] 프로그래머스 Lv 0 - 외계행성의 나이 (1) 2024.10.20 [Java 자바] 프로그래머스 Lv 0 - 배열 자르기 (0) 2024.10.19 [Java 자바] 프로그래머스 Lv 0 - 짝수의 합 (1) 2024.10.18