티스토리 뷰

풀기전에

처음으로 회사에서 출제되는 문제를 풀어 보았다.

프로그래머스에서 보여지는 난이도는 Level1 이라고 되어 있지만, 왠지 모르게 쫄아서 피했던것 같다.

 

문제가 꽤나 재미있다. 진짜로 있을 것 같은 케이스라고 할 까?

게임에 있어서 각 스테이지의 실패율을 구하는 문제인데 나는 아래와 같이 풀었다.

 

def solution(N, stages):
    answer = [0] * N
    counters = dict()

    for i in stages:
        counters[i] = counters.get(i, 0) + 1

    for k, v in counters.items():
        i = 1
        while k > i:
            answer[i-1] += v
            i += 1

    people = len(stages)
    for i in range(len(answer)):
        tmp = answer[i]
        answer[i] = (i + 1, 0) if people == 0 else (i + 1, (people - answer[i]) / people)
        people = tmp

	
    answer = sorted(answer, reverse=True, key=lambda stage: stage[1])
    answer = [stage[0] for stage in answer]

    return answer

 

풀고난 후

생각보다 어렵지 않아서 재미있게 풀었던 문제. 덕분에 자신감도 생겼다.

앞으로도 하나씩 도전해야지.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/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
글 보관함