티스토리 뷰
📌문제
https://school.programmers.co.kr/learn/courses/30/lessons/42889
📌풀이
스테이지 번호를 1부터 N까지 증가시키며 해당 단계에 머물러 있는 플레이어들의 수를 계산
플레이어들의 수 정보를 이용하여 모든 스테이지에 따른 실패율을 계산
실패율 기준으로 내림차순 정렬
📌코드
def solution(N, stages):
answer=[]
length=len(stages)
#스테이지 번호를 1부터 N까지 증가
for i in range(1, N+1):
#해당 스테이지에 머물러 있는 사람 수 계산
count=stages.count(i)
#실패율
if length==0:
fail=0
else:
fail=count/length
#리스트에 (스테이지번호, 실패율) 삽입
answer.append((i, fail))
length-=count
#실패율 기준으로 각 스테이지 내림차순
answer=sorted(answer, key=lambda t: t[1], reverse=True)
#정렬된 스테이지 번호
answer=[i[0] for i in answer]
return answer
📌참고