真后悔大学没有好好学,当时记得老师说过动态规划的题目,但是自己当时根本不知道学这个是干嘛用的。。。
现在想起来应该先出来工作两年,面试两年,然后再开始上课就知道这些东西的重要性了!
言归正传,来说DP
背包问题是NP完全问题,DP用来求背包问题是最优的可解方案之一。
所谓背包问题就是:设有n件物品,每件价值记为Pi,每件体积记为Vi,用一个最大容积为Vmax的背包,求装入物品的最大价值。
用一个数组f[i,j]表示取i件商品填充一个容积为j的背包的最大价值,显然问题的解就是f[n,Vmax].
昨天同事问的另外一道题目也挺有意思,现在想来,其实也是用DP方法来做的
就是给2个数字,只能进行3,5,7的加减操作,如果将一个数字转换成另外一个数字。