硬币的面值

题目描述

小 A 有 $n$ 种硬币,现在要买一样不超过 $m$ 元的商品,他不想得到找钱(多脏啊),同时又不想带太多的硬币,且硬币可以重复,现在已知这 $n$ 种硬币的价值,请问最少需要多少硬币就能组合成所有可能的价格?

输入输出格式

输入格式


第一行两个数:$n, m$。 下一行,共 $n$ 个数字,表示硬币的面值。

输出格式


一行一个数,表示最少需要多少硬币。如果无解请输出 `No answer!!!`。

输入输出样例

输入样例 #1

5 31
1 2 8 4 16

输出样例 #1

5

说明

【数据范围】 只有 9、10 会卡人,放心贪 对于 $20\%$ 的数据,$1 \le n \le 10$,$1 \le m \le 100$。 对于 $60\%$ 的数据,$1 \le n \le 1000$,$1 \le m \le 10000$。 对于 $80\%$ 的数据,$1 \le n \le 30000$,$1 \le m \le 2 \times {10}^9$。 对于 $100\%$ 的数据,$1 \le n \le 2 \times {10}^5$,$1 \le m \le 2^{63}$。