[프로그래머스] 실패율

stanley.·2022년 11월 3일
0

알고리즘

목록 보기
8/9
post-thumbnail

처음 접근

  1. 단계 수 만큼 반복을 진행한다.
  2. 각 단계별로, 실패율을 구해준다.
  3. 실패율이 0일 경우에, 예외처리를 설정해준다.
  4. 실패율을 기준으로 내림차순 정렬 해준다.
  5. 각 단계별 실패율을 기준으로 내림차순 정렬된 배열에서, 각 단계의 번호를 출력해준다.
def solution(N, stages):
    answer = []
    result = []

    #각 단계 수 
    for i in range(1, N+1):
        stop_player = 0
        success_player = 0

        for j in stages: # 사용자가 멈춰 있는 스테이지의 번호 동안
            if i < j:
                success_player+=1
            elif i == j :
                success_player +=1
                stop_player +=1
        try:
            answer.append((i, stop_player / success_player))
        except:
            answer.append((i, 0))

    answer.sort(key=lambda x: x[1], reverse=True)

    for i in answer:
        result.append(i[0])

    return result
profile
🖥 Junior Developer.

0개의 댓글