진료 순서 정하기 - Python

2023. 9. 21. 01:52공부/📝 프로그래머스

def solution(emergency):
    answer = []
    sorted_list = sorted(emergency, reverse=True)
    for item in emergency:
        for i in range(len(sorted_list)):
            if item == sorted_list[i]:
                answer.append(i+1)
                break
    return answer


# Test Cases
print(solution([3, 76, 24]))
print(solution([1, 2, 3, 4, 5, 6, 7]))
print(solution([30, 10, 23, 6, 100]))

  이중반복문을 쓴게 시간 복잡도 면에서 좀 걸렸습니다.

 


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

  index() 를 쓰면 좋았겠네요. 배우고 갑니다.

 


 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

'공부 > 📝 프로그래머스' 카테고리의 다른 글

배열 원소의 길이 - Python  (0) 2023.09.21
순서쌍의 개수 - Python  (0) 2023.09.21
외계행성의 나이 - Python  (0) 2023.09.21
짝수의 합 - Python  (0) 2023.09.21
각도기 - Python  (0) 2023.09.21