CodingTest/programmers
[프로그래머스/Programmers] 실패율 - Python
ukunV
2021. 9. 2. 17:35
Link
코딩테스트 연습 - 실패율
실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스
programmers.co.kr
Solution
해당 문제는 Dictionary를 사용하면 좀 더 쉽게 접근할 수 있었다.
Dictionary를 lambda()를 사용해 정렬할 때에도 접근하는 방법이 다양하다는걸 문제를 풀면서 알게 되었다.
해당 문제를 통해 lambda()의 정확한 사용법을 몰랐던 사람들은 더 찾아보며 lambda()에 대해 확실하게 짚고 넘어가는 계기가 되길 바란다.
def solution(N, stages):
answer = {}
t = len(stages)
for i in range(1, N + 1):
if t != 0:
count = stages.count(i)
answer[i] = count / t
t -= count
else:
answer[i] = 0
return sorted(answer.keys(), reverse=True, key=lambda x: answer[x])
🔑 key point:
count = stages.count(i)
answer[i] = count / t
t -= count
📌 Tip: Dictionary, lambda()