10536. Бідони-2
На заводі необхідно розлити \(N\) літрів молока на бідони. Є необмежена кількість бідонів \(K\) типів, їх об'єми різні. Визначте, які бідони потрібно використовувати, щоб усі бідони були заповнені та їх кількість була мінімальною.
Формат вхідних даних
Вхідний рядок містить два натуральні числа, розділені пробілом: кількість літрів молока \(N\), яке потрібно розподілити по бідонам, і число типів бідонів \(K\) . Відомо, що \(N \le 1000\) і \(K \le 100\) .
Другий рядок містить \(K\) натуральних чисел – об'єми кожного типу бідонів. Усі ці числа різні.
Формат вихідних даних
У першому рядку програма має вивести кількість використаних бідонів, а у другому – обсяги цих бідонів у порядку зменшення (незростання). Якщо задану кількість молока не можна розлити по бідонах запропонованих розмірів так, щоб усі бідони були заповнені, програма має вивести одне число -1.
Приклад вхідних даних
10 3
1 5 6
Приклад вихідних даних
2
5 5
Коментарі