eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Монетки

Монетки

У Чарівній країні використовуються монетки номіналом a1, a2, ..., am. Чарівний чоловічок прийшов у крамницю і виявив, що у нього є рівно по дві монетки кожного номіналу. Йому потрібно заплатити суму n. Напишіть програму, яка визначає, чи зможе він розрахуватись без здачі.

Вхідні дані

У першому рядку записано числа n (1n109) та m (1m15). У другому рядку записано m попарно різних чисел a1, a2, ..., am (1ai107).

Вихідні дані

Виведіть найменшу кількість монет k, яку прийдеться віддати Чарівному чоловічку, якщо він зможе заплатити вказану суму без здачі. Якщо без здачі не обійтись, то виведіть одне число 0. Якщо ж у Чарівного чоловічка не вистачить грошей, щоб заплатити вказану суму, виведіть одне число -1.

Ліміт часу 1 секунда
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
5 2
1 2
Вихідні дані #1
3
Вхідні дані #2
7 2
1 2
Вихідні дані #2
-1
Вхідні дані #3
5 2
3 4
Вихідні дані #3
0