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

Упаковка води

Упаковка води

Йшов час, ізіна вода ставала уве відомішою і популярнішою, доки, нарешті, Ізя не стал основним постачальником води в країні. Усі великі корпорації, заклади, просто колективи вважали своїм обов'язком купувати воду лише у Ізі. І, коли справа досягла таких масштабів, з'явились нові проблеми. Замовлення почали приходити на дуже велику кількість води. Таку, що не поміститься ні у яку пляшку. Тому Ізя найняв фургон, на якому воду можна постачати у довільних кількостях. Тепер залишалось лише одне питання -- як відміряти необхідний об'єм? На щастя, у Ізі виявилось цілих \textbf{N} видів пляшок, кожна з яких була розрахована на певний об'єм води. Тепер виявилось необхідним для кожного замовлення найбільш компактно розлити відповідну кількість води по бутилям. \InputFile У першому рядку знаходитсья одне число \textbf{N} (\textbf{2} ≤ \textbf{N} ≤ \textbf{10}) -- кількість видів пляшок, які є у Ізі. У другому рядку через пропуск задано \textbf{N} натуральних чисел \textbf{a_i}_\{ \}(\textbf{1} ≤ \textbf{a_i} ≤ \textbf{1000})-- об'єм, який поміщається у \textbf{i}-ту пляшку. Потрібно відмітити, що різні види пляшок не обов'язково відрізняються за об'ємом. Кількість пляшок кожного виду необмежена. У третьому рядку міститься одне число \textbf{M} (\textbf{1} ≤ \textbf{M} ≤ \textbf{100000}) -- кількість замовлень, які поступили до Ізі. У кожному з \textbf{M} наступних рядків міститься одне число \textbf{X_j}_\{ \}(\textbf{1} ≤ \textbf{X_j} ≤ \textbf{10^14}) -- потрібний об'єм води для \textbf{j}-го замовлення. \OutputFile Для кожного з \textbf{M} замовлень у окремому рядку виведіть мінімальне число пляшок, у які можна розлити рівно \textbf{X_j} води. Якщо ж не існує такого набору пляшок, виведіть \textbf{-1}.
Ліміт часу 1 секунда
Ліміт використання пам'яті 16 MiB
Вхідні дані #1
2
2 3
7
1
2
3
4
5
6
7
Вихідні дані #1
-1
1
1
2
2
2
3
Автор Олександр Вінц