代码随想录冲冲冲 Day38 动态规划Part6

322. 零钱兑换

最大最小值的问题 这样的问题不需要考虑遍历顺序

但是这道题需要注意的是红线的两个部分

这两个部分的意思是一样的 首先dp[j]代表的是amount为j的时候 最小的硬币数量

如果说任何的dp[j]为INT_MAX也就是初始值,这就说明这哥mount的数量没有得到或者得不到

那么就不能继续更新了加入j =5 有可能 j=4根本得不到 那么由dp[4] +1就不合理了 需要看类似与dp[3] +1可不可以得到

279. 完全平方数

完全背包且组合 所以先物品后背包

其他组合的情况 只要背包容量从cost[i]开始就可以了 但是这道题并不知道cost[i]

所以背包容量就要从0开始

这是就要多一个 j -i*i的判断,如果说小于0就说明空间比cost要小了 那就不用考虑了

139. 单词拆分

dp[j]表示s的单词 从0-j可不可以有dic拼成

那么关系其实就是如果说dp[i]可以拼成 + i~j这一段可以拼成 那么就可以拼成

对于每一个背包空间(单词的长度)来说 

去看dp[j]也就是看前i个dp[i]与[i,j]是否满足条件 如果都满足

那么dp[j]也满足

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值