방명록
- [프로그래머스] 진료순서 정하기2023년 10월 20일 13시 51분 20초에 업로드 된 글입니다.작성자: 민발자728x90
문제
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.
풀이
int[] answer = new int[emergency.length]; // 높을수록 응급도 높음 // 3, 1, 2 출력 for(int i = 0; i < emergency.length; i++) { answer[i]++; // 순서 1부터 시작 모두 1 더해줌 for(int j = 0; j < emergency.length; j++) { if (emergency[i] < emergency[j]) answer[i]++; // 값 비교해서 작으면 순위 뒤로 밀리니까 1씩 더해줌 } }
이중for문이 맞나 싶다..🤔
참고할만한 다른 사람 풀이
import java.util.*; class Solution { public int[] solution(int[] emergency) { int len = emergency.length; int[] answer = new int[len]; Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < len; i++) { map.put(emergency[i], i); } Arrays.sort(emergency); for (int i = len-1; i >= 0; i--) { answer[map.get(emergency[i])] = len - i; } return answer; } }
Map 사용하는 방법
728x90'기록 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 모스부호(1) (1) 2023.10.20 [프로그래머스] 순서쌍 구하기 (1) 2023.10.20 [프로그래머스] 배열 자르기 (0) 2023.10.20 [프로그래머스] 등차수열의 특정한 항만 더하기 (0) 2023.10.20 [프로그래머스] 수열과 구간 쿼리 2 (0) 2023.10.20 다음글이 없습니다.이전글이 없습니다.댓글