#1329. 货币系统

货币系统

问题描述

具体描述见教材p253: 母牛们不但创建了它们自己的政府,而且选择建立了自己的货币系统。它们对货币的数值感到好奇。传统地,一个货币系统是由1,5,10,20或25,50,100的单位面值组成的。母牛想知道用货币系统中的货币来构造一个确定的面值,有多少种不同的方法。 举例来说,使用一个货币系统{1,2,5,10,…} 产生18单位面值的一些可能的方法是:18×1, 9×2, 8×2+2×1, 3×5+2+1,等等。写一个程序,计算用给定的货币系统来构造一个确定的面值有多少种方法。

格式

输入

第1行有两个整数n,v,其中 v(1≤v≤25) 表示货币系统中货币的种类,n是要构造的面值 (1≤n≤10000)。 第2~n+1行:表示可用的货币面值(每行一个)。

输出

输出方案总数。

样例

3 10
1
2
5
10

限制

1s, 64MB.