코딩테스트

정렬_심화25) 실패율 _ python

728x90

문제링크

https://school.programmers.co.kr/learn/courses/30/lessons/42889

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

코드

def solution(N, stages):
    stages.sort()
    result = {}
    for i in range(N):
        result[i+1] = 0

    for i in stages:
        try:
            result[i] += 1
        except:
            break

    downNum = len(stages)
    print(result)
    for i in range(N):
        nextNum = result[i+1]
        if downNum > 0:
            result[i+1] = result[i+1] / downNum
            downNum -= nextNum
        else:
            break
    print(result)
    resultList = sorted(result.items(), key=lambda x:x[1], reverse=True)
    answer = []
    
    for L in resultList:
        answer.append(L[0])
    
    return answer
728x90