본문 바로가기
코딩공부/프로그래머스 (python)

[프로그래머스] 실패율 (Python)

by CodingKwon 2022. 3. 27.

문제 링크 (Level 1)

https://programmers.co.kr/learn/courses/30/lessons/42889?language=python3 

 

코딩테스트 연습 - 실패율

실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스

programmers.co.kr

 

나의 코드 (Python)

def solution(N, stages):
    user = len(stages)  # 유저수
    failRate = {}   # 실패율 딕셔너리

    for i in range(1, N+1):     # 스테이지 별 실패율 구하기
        if user != 0:   # 남은 유저가 있을 경우
            failRate[i] = stages.count(i) / user
            user -= stages.count(i)
        else:   # 남은 유저가 없을 경우
            failRate[i] = 0

    # 실패율 딕셔너리 value 기준으로 key 역순 정렬
    answer = sorted(failRate, key= lambda i : failRate[i], reverse=True)    

    return answer

 

이 문제는 딕셔너리로 저장하여 문제를 해결합니다.

스테이지별로 실패율 value값을 저장하고

정렬을 할 때 value값의 역순으로 정렬한 key 값을 return 합니다.

 

 

댓글