Заїзд в ЛКШ
Чи знаєте ви, як непросто організувати заїзд в ЛКШ? Наприклад, у 2012 році потрібно було замовити автобуси для цілих n ЛКШат, які мріяли дістатись до "Берендєєвих полян" з Москви. Один з директорів ЛКШ повідомив другому директору, що можно замовити деякі з m автобусів. Він взнав місткість кожного автобуса і відразу зрозумів, яку мінімальну кількість автобусів йому потрібно замовити, щоб привезти у табір усіх ЛКШат.
А чи зможете ви так само швидко розв'язати цю задачу?
Вхідні дані
У першому рядку записано цілі числа n та m (1 ≤ n ≤ 10^6
, 1 ≤ m ≤ 1000). У наступному рядку через пропуск записано m чисел від 1 до 1000 - місткості автобусів.
Вихідні дані
У першому рядку виведіть k - мінімальну кількість автобусів, які прийдеться замовити директору. У наступному рядку виведіть через пропуск k цілих чисел - номери автобусів, які потрібно замовити. Автобуси пронумеровано від 1 до m у тому порядку, у якому вони перераховані у вхідних даних. Якщо можливих розв'язків декілька - виведіть довільний. Якщо розв'язків немає, у єдиному рядку виведіть "-1".