当前位置: 首页 > news >正文

重练算法(代码随想录版) day38 - 动态规划part6

今日刷题量:4
当前刷题总量:147
Easy: 59
Mid: 81
Hard: 7

Day38
解题思想

  • 完全背包最值(322/279):容量递增(或容量外层也行),核心是允许重复使用
  • 0/1 背包:容量倒序(防止同一物品用多次)
  • 多重背包:二进制拆分后 → 按 0/1 倒序
  • 139 可达性:外层位置 i,内层切分点 j(dp[j] 推 dp[i])

多重背包(每种物品最多 k 次)

  • 类型:有界背包
  • 常见目标:最大价值 / 最小件数 / 方案数(按题定)
  • 标准做法 1:二进制拆分 → 0/1 背包
    • 把 k 拆成 1,2,4,...(最后一份不足补上)
    • 每一份变成一个 0/1 物品:W=wtake, V=vtake
    • 然后做 0/1 背包:容量倒序
  • 循环关键:
    • 拆分后:for each newItem
    • for j=C..W (倒序)
  • 复杂度:O(C * Σ log k[i])

练习题目
322. 零钱兑换(mid):https://leetcode.cn/problems/coin-change/description/
279.完全平方数(mid):https://leetcode.cn/problems/perfect-squares/
139.单词拆分 (mid):https://leetcode.cn/problems/word-break/description/
多重背包(mid):https://kamacoder.com/problempage.php?pid=1066

http://www.jsqmd.com/news/79260/

相关文章:

  • 笑不活!男人假装爱你,7 个 “演技信号” 速查!
  • 1-Year XTOOL D9 Update Service: Latest Diagnostics for European/American Vehicles
  • 【笔记】最近公共祖先 Tarjan
  • Error occurred during initialization of VMCould not reserve enough space for object heap
  • 【算法题】滑动窗口(一)
  • 东芝与Quantum Corridor实现量子安全网络通信重大突破
  • 基于java的SpringBoot/SSM+Vue+uniapp的零工市场服务系统的详细设计和实现(源码+lw+部署文档+讲解等)
  • 为什么越来越多的IT技术人员转行网络安全?零基础入门到精通,收藏这一篇就够了
  • 甲骨文AI投资支出激增致股价创24年最大跌幅
  • 基于java的SpringBoot/SSM+Vue+uniapp的旅游出行指南系统的详细设计和实现(源码+lw+部署文档+讲解等)
  • HTTP协议在C#大文件上传中如何处理重试逻辑?
  • 转行IT最吃香的六大岗位:从零到精通,就业无忧!
  • 【笔记】基本数论
  • 19、将 Snort 规则转换为 iptables 规则
  • 计算计算机专业内卷严重,普通毕业生何去何从?​这个风口行业缺口炸了,现在入行正当时!
  • 【Java毕设全套源码+文档】于 SpringBoot的干洗店预约洗衣系统的设计与实现(丰富项目+远程调试+讲解+定制)
  • 23、深入解析 fwsnort 与 psad 的协同防御机制
  • 24、结合 psad 和 fwsnort 增强网络安全防护
  • 22、深入解析fwsnort:网络攻击检测与响应的利器
  • 【Java毕设全套源码+文档】基于 Web 的高校教师工作量管理系统设计与实现(丰富项目+远程调试+讲解+定制)
  • Qt Creator中pro文件添加外部动态库的方法
  • 芯祥联科技SNMP协议栈产品形态
  • 【笔记】状压 DP
  • 基于java的SpringBoot/SSM+Vue+uniapp的篮球管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
  • 【题解】Luogu P5905【模板】全源最短路(Johnson)
  • 基于SpringBoot的宠物识别小程序的设计与实现毕业设计项目源码
  • 基于SpringBoot的传统服饰订制系统毕业设计项目源码
  • 美团原生AI编辑器
  • 基于SpringBoot的大学生体测数据管理系统毕业设计项目源码
  • P3258 [JLOI2014] 松鼠的新家