eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Скидки

Скидки

Посетив перед Новым годом большой магазин, вы выбрали много подарков родным и друзьям. Сэкономить определенное количество денег вам могут помочь два типа предновогодних скидок, которые действуют в магазине:

  1. При покупке трех товаров вы платите за них как за два самых дорогих из них.
  2. При покупке четырех товаров вы платите за них как за три самых дорогих из них.

Таким образом, определенные товары можно объединить в тройки либо четверки и заплатить за них меньше. Требуется определить наименьшую возможную сумму денег, которая будет потрачена на приобретение всех подарков. Например, если цены пяти выбранных подарков составляют: 50, 80, 50, 100, 20, то можно отдельно купить четыре первых товара, получить за них скидку, и потом купить оставшийся подарок по его номинальной цене. В целом вся покупка будет стоить 250 денежных единиц, вместо 300.

Напишите программу, которая по ценам всех подарков, находит минимальную сумму денег, достаточную для их покупки.

Входные данные

Первая строка содержит одно целое число N (0 ≤ N ≤ 10 000). Вторая строка содержит N натуральных чисел - цены подарков. Сумма цен всех подарков меньше чем 109. Объединять можно не только те товары, которые идут подряд во входных данных.

Выходные данные

Вывести одно целое число - найденную минимальную сумму денег, за которую можно купить все подарки.

Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
5
50 80 50 100 20
Выходные данные #1
250
Автор Шамиль Ягияев
Источник 2008 XXI Всеукраинская олимпиада по информатике, Львов, Апрель 5 - 11, тур 2