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

动态规划背包问题

背包问题主要是背模板,这里收录了一些模板

一些复杂的背包问题(如泛化物品)未收录

01背包问题:

无优化

for(int i=1;i<=n;i++) { for(int c=0;c<=m;c++) { f[i][c]=f[i-1][c]; if(c>=w[i]) f[i][c]=max(f[i][c],f[i-1][c-w[i]]+v[i]); } }

一维数组优化:

for(int i=1;i<=n;i++) { for(int c=m;c>=0;c--) { if(c>=w[i]) f[c]=max(f[c],f[c-w[i]]+v[i]); } }

更进一步的常数优化:

for(int i=1;i<=n;i++) { sumw+=w[i]; bound=max(m-sumw,w[i]); for(int c=m;c>=bound;c--) { if(c>=w[i]) f[c]=max(f[c],f[c-w[i]]+v[i]); } }

完全背包问题:

for(int i=1;i<=n;i++) { for(int c=0;c<=m;c++) { if(c>=w[i]) f[c]=max(f[c],f[c-w[i]]+v[i]); } }

多重背包问题:

for(int i=1;i<=n;i++) { if(w[i]*a[i]>m) { for(int c=0;c<=m;c++) { if(c>=w[i]) f[c]=max(f[c],f[c-w[i]]+v[i]); } } else { k=1;amount=a[i]; while(k<amount) { for(int c=k*w[i];c>=0;c--) { if(c>=w[i]) f[c]=max(f[c],f[c-w[i]]+k*v[i]); } amount-=k; k<<=1; } for(int c=amount*w[i];c>=0;c--) { f[c]=max(f[c],f[c-w[i]]+amount*v[i]); } } }
http://www.jsqmd.com/news/1280969/

相关文章:

  • Godot引擎集成AI代码生成:加速游戏原型开发实践
  • 超声波焊接机市场格局解析:国际一线品牌与国产技术中坚如何选择? - 品牌推荐大师
  • ABAQUS盾构隧道下穿施工模拟技术与工程实践
  • Hashcat实战:五种方法破解NTLM哈希与掩码规则速查
  • AI降噪工具千笔:专业降低AI生成内容机械感
  • Unity光照Shader实战:从Blinn-Phong原理到URP自定义实现与优化
  • HF Patch:一键解锁《恋活!》200+插件,打造终极游戏体验
  • 职场周报撰写指南:结构、技巧与优化建议
  • Windows电脑运行安卓应用:终极APK安装器完整使用指南
  • ComfyUI-WanVideoWrapper:AI视频生成从入门到精通,3天变3分钟
  • 完全掌握抖音下载神器:douyin-downloader 从入门到精通实战指南
  • C++ ~ 类的声明和类的实现分开
  • 如何10分钟制作专业短视频?MoneyPrinterTurbo的AI视频创作终极指南 [特殊字符]
  • 蓝牙5.4音频模块与PIC18微控制器的低功耗开发方案
  • 实时数仓技术路线对比:Flink + Kafka vs RisingWave vs Materialize
  • 单细胞测序技术解析:CIMA免疫细胞图谱与应用
  • 加密货币休眠式囤币策略:长期持有的量化优势
  • 2026合肥硬件设计公司哪家好,硬件开发公司哪家好?实用选购指南+避坑要点 - mobible
  • Spring Boot中@Mapper与@MapperScan注解详解与实战
  • 433MHz无线履带小车:从遥控玩具到微型移动机器人平台的实战指南
  • 计算机毕业设计之基于SpringBoot的个人日程管理设计与实现
  • Agent上线就崩?小团队拿什么跟大厂拼“权限+日志”?
  • RBF神经网络在工业故障诊断中的应用与优化
  • NBM7100A芯片与PIC18MCU的低功耗物联网电池优化方案
  • 前端工程师的AI转型红利:告别焦虑,掌握高薪AI Agent开发的核心技能!
  • HFS文件服务器配置终极指南:从零构建企业级文件共享解决方案
  • 商超生鲜果蔬配送快检实验室农药残留检测全套仪器设备有哪些采购清单 - 云唐专业仪器测评
  • 宁夏闭孔板、匀质板采购指南:本地实力厂家对比与选型建议 - 品研笔录
  • JAVA计算机毕设之基于 SpringBoot+Vue 的老年康养服务信息化综合管理系统 养老院日常巡查与护理记录归档系统(完整前后端代码+说明文档+LW,调试定制等)
  • AI教材生成技术:低查重与高质量内容实践