【问题标题】:dynamic programming algorithm - number of ways to spend A dollars动态规划算法 - 花费 A 美元的方法数
【发布时间】:2021-03-07 17:18:07
【问题描述】:

我对如何处理这个动态算法问题感到困惑 - 我想将问题分解成更小的子问题,但我不知道如何准确地做到这一点

问题:假设您正在购物并计划花费 A 美元。您对 t 件物品感兴趣,每件物品供应无限,因此价值 C1、C2、...、Ct 美元。设计一个动态规划算法来计算花费 A 美元的方式的数量。

任何帮助将不胜感激!

【问题讨论】:

  • 这正是经典的“硬币找零问题”。谷歌它,你会发现大量的好文章来帮助你理解逻辑
  • @notnotparas 谢谢,一定会的!

标签: algorithm dynamic-programming


【解决方案1】:

我将创建一个数组大小 + 1 的 A。然后对其进行迭代,并在内部迭代项目,以将您达到的索引处的值增加您所在的值。

假设 A 为 4,数组将全部为 0。arr = [0 , 0 ,0 ,0 , 0] 和 item 是 1 美元和 2 美元。

at step one arr will become [0,1,1,0,0]
step two [0,1,2,1,0] 
3 [0,1,2,3,1]
4 [0,1,2,3,4]

我强烈建议你看看这个问题https://www.geeksforgeeks.org/coin-change-dp-7/

【讨论】:

  • 非常感谢!这绝对可以帮助我解决问题!
猜你喜欢
  • 2012-03-26
  • 2013-11-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-25
相关资源
最近更新 更多