실패율

2021.05.10 실패율

Solution

index는 스테이지-1로 되도록 리스트를 사용.

  1. 스테이지에 도달했던사람, 클리어하지 못한스테이지 인원 파악

    • 스테이지에 도달했지만 아직 클리어 하지 못한 사람이 속한 스테이지를 notClear에 기록.
    • 현재 속한 스테이지 전까지는 도달 후 클리어한 경우이므로 visited에 기록.
  2. 인원으로 튜플리스트 만들기. 튜플은 (실패율, 스테이지)로 이루어짐.

  3. 튜플리스트 sorting (실패율은 내림차순, 스테이지는 오름차순)

  4. sorting된 튜플리스트에서 스테이지만으로 리스트 구성

def solution(N, stages):
    answer = []
    visited = [0 for _ in range(N)]
    notClear = [0 for _ in range(N)]
    for n in stages:
        if n == N+1:
            for i in range(n-1):
                visited[i] += 1
        else:
            notClear[n-1] += 1
            for i in range(n):
                visited[i] += 1

    for i in range(0, N):
        if visited[i] == 0:
            notClear[i] = (0, i+1)
            continue
        else:
            notClear[i] = (notClear[i]/visited[i], i+1)

    notClear.sort(key=lambda x:(-x[0],x[1]))
    answer = [notClear[i][1] for i in range(N)]

    return answer

'SW > 알고리즘 문제풀이' 카테고리의 다른 글

공유기 설치  (0) 2021.05.19
카드정렬하기  (0) 2021.05.19
안테나  (0) 2021.05.10
국영수  (0) 2021.05.10
가사검색  (0) 2021.04.20