본문 바로가기
프로그래밍/알고리즘

프로그래머스 과일장수 파이썬

by 숙님 2023. 3. 6.
728x90

문제 설명 

문제 풀이

def solution(k, m, score):
    answer = 0
    score.sort(reverse=True)
    for i in range(len(score) // m):
        answer += score[i * m + m - 1] * m
    return answer

먼저 내림차순으로 해서 정렬 후 m개를 고르는 방법을 사용했다 

규칙성을 찾으려고 했고 len(score)//m만큼 루프를 돌면서 

그룹 최하위 점수(score[i * m + m - 1])를 리턴한다 

뜬금인데 코드 내에서 k를 안써서 k를 활용할 방법이 있나? 고민해보았다 

 

 

타인의 숏코드 

def solution(k, m, score):
    return sum(sorted(score)[len(score)%m::m])*m

댓글