프로그래머스_Lv0_진료순서 정하기_파이썬

Today Jeeho Learned·2022년 12월 9일
0

알고리즘

목록 보기
24/38
post-thumbnail

문제 출처

https://school.programmers.co.kr/learn/courses/30/lessons/120835

내 답안

def solution(emergency):
    answer1 = []
    answer2 = []
    
    answer2 = sorted(emergency)
    answer2.reverse()
    # sorted(emergency, reverse=True) 한 줄로 가능
    
    for i in emergency:
        answer1.append(answer2.index(i)+1)
    return answer1

풀이 정리

  • 쉬울꺼라고 생각했는데, 생각보다 어려웠다.
  • 새로운 배열 answer2 을 생성하여 emergency를 내림차순으로 정렬한다.
  • 기존의 emergency의 원소값을 확인하고, 이 원소값이 answer2배열에서 어떤 index의 위치에 있는지를 확인한다.
  • 새로운 배열answer을 생성하여 위에서 찾은 위치(=index)에 1을 더해준다. 즉(index+1)

다른풀이

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

한 줄로 간단하게 나올 수 있었음

profile
기록해야 (살아)남는다 !

0개의 댓글