📌 핵심로직(유형 파악)

📌 소스코드 (My Solution)

def solution(emergency):
    answer = []
    
    temp = sorted(emergency,reverse=True)
    
    for e in emergency: 
        for t in temp:
            if(e==t):
                answer.append(temp.index(t)+1)
    
    return answer

📌 코드 회고

  1. 가독성 중심 (초급~중금)
def solution(emergency):
    temp = sorted(emergency, reverse=True)
    # 리스트 컴프리헨션으로 간결하게 작성
    return [temp.index(e) + 1 for e in emergency]
  1. 성능 최적화 (고득점/실무용)
def solution(emergency):
    # {응급도: 순위} 형태의 딕셔너리를 미리 생성
    # 예: {76: 1, 24: 2, 3: 3}
    rank_dict = {val: i + 1 for i, val in enumerate(sorted(emergency, reverse=True))}
    
    # 딕셔너리에서 바로 꺼내오기
    return [rank_dict[e] for e in emergency]