支付方法:取1元、2元和5元纸币共10元,凑整18元,共有几种方法
时间: 2024-05-18 11:13:29 浏览: 96
取整数的几种方法.7z
这是一个找零问题,可以用动态规划解决。
设dp[i][j]表示使用前i种纸币凑成j元的方案数,则有状态转移方程:
dp[i][j] = dp[i-1][j] + dp[i][j-coin[i]]
其中,coin数组表示第i种纸币的面值。
根据题目要求,我们需要凑整18元,使用的纸币种类为1元、2元、5元,因此可以初始化dp数组如下:
dp[1][1]=1, dp[1][2]=1, dp[1][3]=1, ..., dp[1][18]=1
dp[2][2]=1, dp[2][3]=2, dp[2][4]=2, ..., dp[2][18]=10
dp[3][5]=1, dp[3][6]=2, dp[3][7]=2, ..., dp[3][18]=31
最终的答案即为dp[3][18]=31,共有31种凑整18元的方法。
阅读全文