실패율
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
- 내 풀이
def solution(N, stages):
result=[]
empty=[] #없는 스테이지 뒤에 추가하기 위함
answer=[]
stages.sort()
for i in range(1,N+1):
#멈춘 사람 수
n=stages.count(i) #i번 스테이지
if i not in stages:
empty.append(i)
continue
idx=stages.index(i)
#도달 사람 수: 정렬해놨기 때문에 뒤는 다 통과한 사람들
m=len(stages[idx:])
if m>0:
result.append((i,n/m))
result.sort(key=lambda x:-x[1])
answer=[x[0] for x in result]
answer+=sorted(empty)
return answer
- 다른 사람 풀이
def solution(N, stages):
answer=[]
fail=[]
info=[0]*(N+2)
for stage in stages:
info[stage]+=1
for i in range(N):
#스테이지에 도달한 유저 수 합산
be=sum(info[i+1:])
yet=info[i+1]
if be==0:
fail.append((i+1,0))
else:
fail.append((i+1,yet/be))
for j in sorted(fail, key=lambda x: x[1], reverse=True):
answer.append(j[0])
return answer'코딩테스트 > 프로그래머스' 카테고리의 다른 글
| [프로그래머스][조합] 이모티콘 할인행사 (0) | 2023.10.15 |
|---|---|
| [프로그래머스][queue] 두 큐 합 같게 만들기 (1) | 2023.10.15 |
| [프로그래머스] [2020 KAKAO BLIND RECRUITMENT] 문자열 압축 (0) | 2023.02.04 |
| [프로그래머스] [2019 카카오 개발자 겨울 인턴십] 튜플 (0) | 2023.02.01 |
| [프로그래머스] 귤고르기 (0) | 2023.01.28 |