문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 풀이
- 실패율을 계산해서 배열에 저장한다 (실패율 0인 경우도 따로 처리 해서 저장해야 함)
- 배열 내림차순으로 정렬
- 배열의 0번째 원소 (스테이지 번호) 만 출력
코드
def solution(N, stages):
length = len(stages)
answer = []
for i in range(1, n + 1):
count = stages.count(i)
# 실패율 0인 경우 처리
if length == 0:
fail = 0
else:
fail = count / length # 실패율 계산
answer.append((i, fail))
length -= count
answer = sorted(answer, key = lambda x:x[1], reverse=True) # 내림차순으로 정렬
answer = [i[0] for i in answer] # 스테이지 단계만 저장
return answer'Algorithm > Sort' 카테고리의 다른 글
| [Python] 백준 31650번 Maximizing Productivity (2) | 2024.10.05 |
|---|---|
| [Python] 카드 정렬하기 (0) | 2023.01.25 |
| [Python] 안테나 (0) | 2023.01.22 |
| [Python] 국영수 (0) | 2023.01.22 |
| [Python] 두 배열의 원소 교체 (0) | 2023.01.20 |