SMALL
[문제]
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다.
정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로
진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.
[답안]
def solution(emergency):
answer = sorted(emergency, reverse=True)
return [answer.index(i) + 1 for i in emergency]
[풀이]
응급도가 높은 순서대로 정렬하여 answer을 선언하였다.
매개변수 emergency의 for문을 돌면서 answer에 저장된 index를 찾은 뒤 + 1 을 하여 답을 구하였다.
+1 을 하는 이유는 index는 0부터 시작하기 때문에,
** index() 함수는 시간복잡도가 O(N**2) 이기 때문에 딕셔너리를 사용하는 것이 좋다고 한다.
딕셔너리 공부한 다음에 다시 풀어봐야겠다
[문제 풀어보기]
https://school.programmers.co.kr/learn/courses/30/lessons/120835
LIST
'develop > Python' 카테고리의 다른 글
[프로그래머스/파이썬] 숨어있는 숫자의 덧셈(2) (1) | 2023.03.30 |
---|---|
[프로그래머스/파이썬] 한 번만 등장한 문자 (0) | 2023.03.30 |
[프로그래머스/파이썬] 가까운 수 (0) | 2023.03.29 |
[프로그래머스/파이썬] k의 개수 (0) | 2023.03.29 |
[프로그래머스/파이썬] 2차원으로 만들기 (0) | 2023.03.29 |