728x90
- m번 더하여 가장 큰 수 만듦
- 연속해서 k번까지만 더할 수 있음
- 배열의 크기 n
=> 가장 큰 수 k번 더하기 그 다음으로 큰 수 1번 더하기 반복
n, m, k = map(int, input().split())
data = list(map(int, input().split()))
data.sort()
first = data[n-1] # 가장 큰 수
second = data[n-2] # 두 번째로 큰 수
result = 0
while True:
for i in range(k):
if m == 0:
break
result += first
m -= 1
if m == 0:
break
result += second
m -= 1
print(result)
n, m, k = map(int, input().split())
data = list(map(int, input().split()))
data.sort()
first = data[n-1] # 가장 큰 수
second = data[n-2] # 두 번째로 큰 수
count = int(m / (k + 1)) * k
count += m % (k + 1)
result = 0
result += count * first
result += (m - count) * second
print(result)
반응형
'전.py' 카테고리의 다른 글
[python] 백준 1283 단축키 지정 (0) | 2022.02.11 |
---|---|
[python] 프로그래머스 실패율 (Lv.1) (0) | 2022.02.11 |
[python] 모험가 길드 (0) | 2022.02.09 |
[python] 곱하기 혹은 더하기 (0) | 2022.02.09 |
[python] 1이 될 때까지 (0) | 2022.02.09 |