티스토리 뷰

문제 설명

접근법

>> 딱히 접근법이랄 것은 없다.
>> 로직에 맞게 카운팅하고, 각 단계의 실패율을 계산한다.
>> 그리고 sorting하는데, 이때 sorting의 stability가 중요하다
>> sorting stability란 key1으로 정렬된 리스트를 key2로 다시  정렬할 때, 
>> key2에 의한 정렬에 영향?을 받지 않은 요소들의 순서가 변하지 않는 것을 말한다. 표현이 정확했나..
>> sorted 함수는 그런 안정성을 제공?해주는 것 같다. 맞는 말을 하는 것인지 헛소리를 하는 것인지..

코드

def solution(N, stages):
    #N은 스테이지의 개수

    m = len(stages)
    fail=[0.0 for _ in range(N+1)]

    for s in range(1, N+1):
        num = 0
        den = 0
        for stage in stages:
            if s <= stage :
                den += 1
            if s == stage :
                num += 1
        if num != 0:
            fail[s]= float(num/den)

    fail[0] = -1
    answer = list(enumerate(fail))
    answer = sorted(answer, key = lambda x : x[1], reverse = True)
    answer = [e[0] for e in answer][:-1]
    return answer
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함