Олимпиадный тренинг

Задача . Грузоподъемник


Задача

Темы:
На складе для поднятия партии коробок различной массы выделен грузоподъемник, но его грузоподъёмность ограничена, поэтому поднять сразу все коробки не удастся. В первую очередь надо погрузить четыре самые тяжелые коробки. На оставшееся после этого место стараются взять как можно большее количество коробок. Если это можно сделать несколькими способами, то выбирают такой способ, при котором поднимаемая масса коробок будет макcимальная. 
Известны количество грузов, масса каждого из них и грузоподъёмность подъемника.
Необходимо определить количество и общую массу коробок, которые будут вывезены при погрузке по вышеописанным правилам.

Входные данные представлены в файле 26-4.txt следующим образом. В первой строке входного файла записаны два целых числа: N – общее количество коробок и M – грузоподъёмность подъемника в кг. Каждая из следующих N строк содержит одно целое число – массу груза в кг. В ответе запишите два целых числа: сначала максимально возможное количество коробок, затем их общую массу.
Пример организации исходных данных во входном файле: 
8 800
110
70
130
140
80
90
160
45
Ответ: 7 780

В данном случае ответ сформировался следующим образом: сначала выбрали самые большие коробки массой 160+140+130+110=540, далее у нас есть несколько вариантов добавить коробки, из которых выбираем сочетание: 90+80+70, итого 780.

time 1000 ms
memory 32 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя