2+1 세일

모든 가격을 내림차순으로 정렬한 뒤 세 개씩 묶어 가장 싼 하나를 무료로 받아 합계를 최소로 만듭니다.

쉬움3그리디정렬면접 대비아직 제출이 없습니다시간 제한1초메모리 제한64 MB

문제

KSG 편의점은 과일우유, 드링킹요구르트 같은 유제품을 2+1 세일로 판다. 유제품 3개를 한 번에 사면 그중 가장 싼 것 하나는 값을 내지 않고 나머지 두 개의 가격만 내면 된다. 한 번에 3개를 사지 않으면 할인 없이 정가를 모두 내야 한다.

예를 들어 유제품 7개의 가격이 각각 10, 9, 4, 2, 6, 4, 3이고 재현이가 (10, 3, 2), (4, 6, 4), (9)로 세 번에 나눠 산다면 첫 번째 꾸러미에 13원, 두 번째 꾸러미에 10원, 세 번째 꾸러미에 9원을 낸다.

재현이는 친구들과 나눠 먹을 유제품 NN팩을 모두 사려고 한다. 계산을 몇 번에 나누든 자유롭게 정할 수 있다. NN팩을 전부 사는 데 드는 최소 비용을 구하라.

입력

첫째 줄에 유제품의 수 NN이 주어진다. (1N100,0001 \le N \le 100{,}000)

둘째 줄부터 NN개의 줄에 각 유제품의 가격 CiC_i가 한 줄에 하나씩 주어진다. (1Ci100,0001 \le C_i \le 100{,}000)

출력

NN팩을 모두 사는 데 필요한 최소 비용을 한 줄에 출력한다. 답은 23112^{31}-1 이하임이 보장된다.