풀이
실패율은 (스테이지에 도달하였으나 아직 클리어하지 못한 플레이어 수) / (스테이지에 도달한 플레이어수) 에 해당한다.
각 플레이어들에 대하여 각자 있는 곳들을 ✔️로 표시하고, 그 전 단계까지는 클리어한 것이므로 o로 표시해 나열해보면 아래와 같이 플레이어는 각 단계에 있어서의 ✔️/(✔️+o)에 해당하는 것을 알 수 있다.
1 | o | ✔️ | o | o | o | o | o | o | ✔️/(✔️+o) |
2 | ✔️ | x | ✔️ | o | ✔️ | o | o | o | |
3 | x | x | x | o | x | o | ✔️ | ✔️ | |
4 | x | x | x | o | x | ✔️ | x | x | |
5 | x | x | x | o | x | x | x | x |
코드
def solution(N, stages):
answer = []
List1 = [0 for _ in range(N+2)]
List2 = [0 for _ in range(N+2)]
List3 = [0 for _ in range(N+2)]
for i in range(len(stages)):
List1[stages[i]]+=1
List2[stages[i]]+=1
for i in range(N,0,-1):
List2[i]+=List2[i+1]
for i in range(1,N+1):
if List2[i]!=0:
List3[i]=List1[i]/List2[i]
answer.append((i, List3[i])) # 여기 실수할 뻔 ㅠㅠㅠㅠ
answer=sorted(answer, key = lambda x: [-x[1],x[0]])
# print(answer)
Ans = []
for i in answer: Ans.append(i[0])
return Ans
실수
위의 로직 중 14번째 줄에서 if문 안에 넣어서 실수할 뻔 하였다 ㅠ
answer.append((i, List3[i])) # 여기 실수할 뻔 ㅠㅠㅠㅠ
'Koala - 12기 > 코딩테스트 준비 스터디' 카테고리의 다른 글
[C++/백준] 21921번 : 블로그 (0) | 2023.10.01 |
---|---|
[백준/C++] 16507번: 어두운건 무서워 (0) | 2023.09.30 |
[백준/phthon3] 2467번: 용액 (0) | 2023.09.25 |
[백준 Python] 1966번: 프린터 큐 (0) | 2023.09.24 |
[백준/Python] 1940번 : 주몽 (0) | 2023.09.24 |