설명
크기가 각각 정해진 \(N\)개의 카드 묶음이 있다. 두 묶음을 하나로 합칠 수 있는데, 크기 \(a\)와 \(b\)인 두 묶음을 합치면 크기 \(a+b\)인 묶음이 되고 \(a+b\)만큼의 비용이 든다.
모든 묶음을 하나로 합칠 때까지 필요한 비용의 최솟값을 구하여라.
제약
\(1 \le N \le 100\,000\), 각 묶음의 크기는 \(1\) 이상 \(1000\) 이하의 정수.
입력 형식
첫째 줄에 묶음의 수 \(N\)이 주어진다.
다음 \(N\)개의 줄에 각 묶음의 크기가 하나씩 주어진다.
출력 형식
모든 묶음을 합치는 데 드는 최소 비용을 출력한다.
예제 1
입력
3
10
20
40
출력
100
설명
10+20=30 (비용30), 30+40=70 (비용70) → 100.
예제 2
입력
1
5
출력
0
설명
카드가 하나면 합칠 필요가 없다 → 0.
문제 정보
riseoj 작성
출처 Original
태그