2019 국가교육기관 코딩테스트_대수의 법칙_python_(Greedy)

https://nearhome.22

import sys
input = sys.stdin.readline

n, m, k = map(int, input().split())
li = list(map(int, input().split()))
li.sort(reverse=True)
i = 0
answer = 0
max = 0

while i < m:

    for g  in range(0, k):
        answer += li(0)
        i += 1
        if i >= m:
            break
    if i < m:
        answer += li(1)
        i += 1

print(answer)

을 더한

1) M만큼 넣었는지 센다.

2) 첫 번째 큰 숫자에 K를 더합니다.

3) 두 번째로 큰 수를 한 번 더하고 2)로 돌아간다.

(매 단계마다 1번 확인)