지식보부상님의 공부 일지

[그리디] 02 큰 수의 법칙 본문

파이썬 문제풀이

[그리디] 02 큰 수의 법칙

지식보부상님 2025. 2. 4. 18:46

<이것이 취업을 위한 코딩테스트다 with 파이썬> 책의 예제 문제에 대한 제 답안을 작성한 게시글 입니다.

CHATER 03: 그리디

P. 92

제출 코드

N, M, K = map(int, input().split())
number_list = list(map(int, input().split()))
number_list.sort(reverse=True)

# 반복되는 묶음의 개수
sets_cnt = M // (K + 1)
# 반복되고 남은 부분의 개수
sets_rest = M % (K + 1)
ans = (number_list[0] * K + number_list[1]) * sets_cnt
ans += sets_rest * number_list[0]

print(ans)