![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
背包
大湿ryan
这个作者很懒,什么都没留下…
展开
-
LintCode-273:考试策略
题目描述:解答思路:实际上是一个“可拆分背包”问题,每个物品可被“部分放入”和“全放入”,设N为物品(考试)总数,T为背包容量(考试时间)。动态规划可解,设dp[i][t]为遍历到第i个物品时背包容量为t的最优解,则递推式如下:for (int i = 1; i < N; i++) { for (int t = 0; t <= T; t++) { if (t < p[i]) {原创 2021-01-21 11:40:23 · 142 阅读 · 0 评论 -
LintCode-312:牛数
题目描述:解答思路:属于背包的变体,目标函数是方案数(需要不同分支累加)而不是最大收益(需要不同分支取max),每个物品可取0~4个。设为遍历到第i个牌之后,容量为j的解决方案数,则递推式如下(需要注意 j-k的非负性质,k=1,2,3,4):初始化:输出:代码:#define MOD 1000000007class Solution {public: /** * @param n: the number * @param .原创 2021-01-22 16:58:10 · 172 阅读 · 0 评论