Coin
描述
N种不同面额的硬币 。每种硬币有无限多个。 要用这些硬币拼凑出面值M,最少需要多少枚硬币。多组询问 。
格式
输入格式
第一行,一个整数 N.
第二行,N个互不相同的整数\( a_1\),\( a_2\), …, \(a_n\),依次表示每种硬币的面额。
第三行 ,一个整数T,表示询问数。
接下来T行,每行一个整数,表示每次询问要凑出的面值。
输出格式
输出 T 行,每行一个整数,依次表示每组询问的答案。
如果不可能凑出相应的面值,输出 -1。
样例1
样例输入1
3
2 3 4
3
1
5
101
样例输出1
-1
2
26
限制
30% 的数据:\(1 \leq M \leq 10^4\).
60% 的数据:\(1 \leq M \leq 10^9,1 \leq T \leq 10\).
100% 的数据:\(1 \leq N \leq 100,1 \leq a_i \leq 10^3,1 \leq M \leq 10^{16},1 \leq T \leq 10^5\).
来源
BJOI2014 Day 1