Олимпиады по программированию olympiads.ru |
|
I Всероссийская заочная олимпиада школьников по информатике, 2006/07 учебный годЗадача H. Тарифы
Оператор сотовой связи решил разработать несколько безлимитных тарифных планов, отличающихся между собой ежемесячной абонентской платой и набором дополнительных услуг. Менеджерам по работе с клиентами удалось выяснить, сколько каждый из VIP-абонентов компании готов тратить в месяц на услуги сотовой связи. Теперь сотовая компания хочет предложить каждому из абонентов свой тарифный план, но, к сожалению, комитет по антимонопольной политике разрешает сотовой компании иметь не более K безлимитных тарифных планов. Помогите менеджерам компании разработать эти K тарифных планов, чтобы максимизировать доходы компании. Формат входных данных В первой строке входного файла записаны два числа: количество VIP-абонентов компании N (1≤N≤100) и количество тарифных планов K (1≤K≤100). Далее записано N целых чисел Ai - сумма, которую i-ый абонент готов тратить на связь в месяц (0≤Ai≤100000). Формат выходных данных Выведите в выходной файл K натуральных чисел - размеры абонентской платы в тарифных планах в порядке возрастания. Размер абонентской платы не должен быть меньше 1 и не может превышать 109. Считается, что каждому абоненту будет предложен тарифный план, в котором абонентская плата максимально возможная, но не превышающая Ai, и этот абонент будет обслуживаться по этому тарифному плану. Если такого тарифного плана не окажется, абонент не будет обслуживаться компанией. Доходы компании вычисляются как сумма абонентской платы, внесенной всеми абонентами компании. Примеры
|