기록하고 까먹지 말기

12845 본문

전공/백준

12845

yha97 2022. 12. 8. 22:24

날짜 : 2022. 12. 08

사용 언어 : python

 

문제

 

 

코드

import sys

n = int(sys.stdin.readline())
card = list(map(int, sys.stdin.readline().split()))  # 카드 입력
card.sort(reverse=True)
res = 0
m = card[0]
for i in range(1, n):
    res += (m + card[i])
print(res)

 

 

풀이

- 카드를 입력받은 후 내림차순으로 정렬해 최댓값을 구한다.

- 조합했을 때 최대가 되는 경우는 최댓값을 픽스한 후 나머지를 연속으로 더하는 것이기 때문에

  (최댓값 + 나머지) 를 반복하여 돌리면 값이 도출된다.

 

 

 

알게된 점

 

 

참고 사이트

 

'전공 > 백준' 카테고리의 다른 글

9237  (0) 2022.12.10
13417  (0) 2022.12.10
1753  (0) 2022.12.08
최단경로 응용문제(이코테) - 2  (0) 2022.12.07
최단경로 응용문제(이코테) - 1  (0) 2022.12.07