火货币HTT怎么抢TOP Coin

* 方法一:动态规划-带备忘机制的洎顶向下法(较慢)

* 方法二:动态规划-自底向上法

dp[i]表示钱数为i时的最小硬币数

遍历所有硬币,选择一个硬币使dp[i]最小

其中coins[j]为第j个硬币而i - coins[j]为钱數i减去其中一个硬币的值,剩余的钱数在dp数组中找到值然后加1和当前dp数组中的值做比较,取较小的那个更新dp数组

//初始化为一较大数amount+1(对於整数硬币,amount的面值最多硬币数为amount后面return语句会用到,判断是否能找零)

//先遍历硬币(此题也可以先遍历钱数)

问题:硬币找零2(求找零方案数)

方法:动态规划(看的不是太懂)

dp[i][j]表示用前i个硬币组成钱数为j的不同组合方法

dp[i]表示组成钱数i的不同方法数

分别为选择coin或者不选择coin

1, 0); //多分配空间方便索引

//初始化为1,当式子中i=coin时可以将dp[i]赋值为1表示使用此coin,方案数为1

coin]; //前者对应不选择coin,使用之前的coin得到的方案数,后者对应选择当湔coin的方案数

我要回帖

更多关于 货币HT 的文章

 

随机推荐