[프로그래머스] 진료 순서 정하기

해피데빙·2023년 1월 4일
0

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

필요한 조건들

  1. 지금 배열 이대로 유지 필요
  2. 정렬된 배열도 필요

의사코드

  1. for문 돌면서 2로 만든 배열 참조
  2. sorted로 새로운 배열

내 풀이 (7분)

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

간소화 풀이

def solution(emergency):
   return [sorted(emergency, reverse=True).index(e)+1 for e in emergency]
  • for e in emergency : 원래 배열 순서대로 원소
  • sorted(emergency, reverse=True) : 정렬
  • index(e)+1 : 정렬된 배열에서 e의 index+1(0부터니까)

못 생각한 이유

1) 나는 for문을 항상 먼저 써서
2) :랑 list에 append 없이 바로 배열에 넣을 수 있는지 몰라서

전체

18분

profile
노션 : https://garrulous-gander-3f2.notion.site/c488d337791c4c4cb6d93cb9fcc26f17

0개의 댓글