Время

15:19:47
10 Февраля 2012
Пятёрка за неделю 22
Осталось: 2 дня
Конец: 11.02.2012 22:00
Лидер: knightL
Версия для печати

Скидки

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

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

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

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

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


Технические условия

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

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

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

   Единственная строка выходного файла должна содержать одно целое число – найденную минимальную сумму денег, за которую можно купить все подарки.


Информация о задаче

Лимит времени: 1 секунда
Лимит памяти: 64 MB
Баллы за пройденный тест: 9.09091
Сложность: 24% 136/180

Пример

Пример входных данных

5
50 80 50 100 20

Пример выходных данных

250


← Геном Ньютона Список задач Точки →