본문 바로가기
프로그래머스

[프로그래머스] lv1. 과일 장수 - Python

by whereisco 2023. 6. 8.

문제

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

 

프로그래머스

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

programmers.co.kr

위 문제는 조건에 맞게 사과상자를 만들어 준 뒤 각 상자에 담긴 가장 낮은 품질의 사과 점수를 활용해 답을 구해줄 수 있습니다. 저의 경우 사과 점수를 가장 먼저 내림차순 정렬한 뒤, 사과 상자의 크기인 m씩 증가하며 점수 리스트를 순회함으로써 만들 수 있는 사과 상자를 모두 구해주었습니다.

만들 수 있는 사과 상자에서 문제 조건에서 주어진 사과 상자의 크기와 상자 길이가 같다면, 점수를 구해주어 문제를 해결하였습니다.

Python

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