1867: 货币系统
[Creator : ]
Description
给你一个n种面值的货币系统,求组成面值为m的货币有多少种方案。样例:设n=3,m=10,要求输入和输出的格式如下:
Input
第一行有两个数,分别表示n种面值组成面值为m的方案。
接下来n行,每行一个数,表示面值。
接下来n行,每行一个数,表示面值。
(1<= n<=25),(1<= m<=10,000)
Output
方案数。
Sample Input Copy
3 10
1
2
5
Sample Output Copy
10
HINT
设dp[i][j]表示前i种货币构成j的方法数,用cc记录货币的面值,状态转移方程为:
dp[i][j]=dp[i-1][j] 不用第i种货币
+dp[i][j-cc[i]] 用第i种货币,j>=cc[i]
时间复杂度是O(VN)的,如果把面值相同的货币记做一种,可以更快一些。