반응형
문제 설명: 외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 중복된 원소는 없습니다.
- 1 ≤ emergency의 길이 ≤ 10
- 1 ≤ emergency의 원소 ≤ 100
문제 해결
def solution(emergency):
rank_map = {val: i + 1 for i, val in enumerate(sorted(emergency, reverse=True))}
return [rank_map[e] for e in emergency]
주석: 응급도 수치를 내림차순 정렬하여 각 값에 대응하는 진료 순위를 Key-Value 쌍(Dictionary)으로 매핑함. 이후 원본 배열의 요소를 Key로 조회하여 $O(1)$의 속도로 순위를 매칭하고 최종 배열을 구성함.
반응형
'코딩_Python(Level.0)' 카테고리의 다른 글
| [Level.0] 팩토리얼 (0) | 2026.03.19 |
|---|---|
| [Level.0] 가까운 수 (0) | 2026.03.18 |
| [Level.0] 2의 영역 (0) | 2026.03.18 |
| [Level.0] 숨어있는 숫자의 덧셈(2) (0) | 2026.03.17 |
| [Level.0] 세 개의 구분자 (0) | 2026.03.17 |