原题传送门

思路


这道题乍看有点难度,但其实就是个容量等于价格的背包问题QAQ。

关于背包问题,详见我的另一篇博文:【洛谷】采药

此题只要把上一题的代码稍作做些修改即可~

设dp[i][j]为前i个物体装入容量为j的背包的最大价值,w[i],v[i]分别为第i个物品的重量和价格。

状态转移方程为:

dp[i][j]=dp[i-1][j]                               (j<w[i])
dp[i][j]=max{dp[i-1][j],dp[i-1][j-w[i]]+v[i]}     (j≥w[i])

水代码开始~(逃~~~)

Code


//经典背包,无需解释
#include<iostream>
#include<cstdio>
#include<cmath>using namespace std;int T,M,w[31],v[31],dp[31][20001];int main()
{//初始化 for(int i=1;i<=M;i++){dp[i][0]=0;}for(int i=1;i<=T;i++){dp[0][i]=0;}//读入 scanf("%d%d",&T,&M);for(int i=1;i<=M;i++){scanf("%d",&w[i]);v[i]=w[i];}//装叉走起for(int i=1;i<=M;i++){for(int j=1;j<=T;j++){if(j<w[i]){dp[i][j]=dp[i-1][j];}else{dp[i][j]=max(dp[i-1][j],dp[i-1][j-w[i]]+v[i]);}} }//输出printf("%d",T-dp[M][T]);return 0;
}

转载于:https://www.cnblogs.com/gongdakai/p/11031476.html

【动态规划】装箱问题相关推荐

  1. java动态规划装箱问题,最少数量货物装箱问题

    题目描述: 最少数量货物装箱问题_牛客网 有重量分别为3,5,7公斤的三种货物,和一个载重量为X公斤的箱子(不考虑体积等其它因素,只计算重量) 需要向箱子内装满X公斤的货物,要求使用的货物个数尽可能少 ...

  2. 装箱问题 动态规划 java_[动态规划]装箱问题

    装箱问题(pack.cpp) [问题描述]有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0 要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小. [输入样例 ...

  3. CodeVs天梯黄金Gold题解

    title: CodeVs天梯之Gold date: 2017-12-28 tags: 天梯 CodesVs categories: OI CodeVs天梯之Gold 2018.01.04 By gw ...

  4. 算法训练 装箱问题(贪心,动态规划,蓝桥杯,C++)

    算法训练 装箱问题 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每 ...

  5. 【动态规划】01背包:P1049 装箱问题

    求剩余体积最小,即求装的体积最大,体积同时对应体积和价值,问题转换为01背包问题 [动态规划笔记]01背包问题及优化_m0_52043808的博客-CSDN博客 代码: #include<ios ...

  6. 快手校招真题-最少数量货物装箱问题(动态规划)

    时间限制:1秒 空间限制:32768K 热度指数:923 本题知识点: Java工程师 C++工程师 快手 动态规划 贪心 算法知识视频讲解 校招时部分企业笔试将禁止编程题跳出页面,为提前适应,练习时 ...

  7. 51NOD 2072 装箱问题 背包问题 01 背包 DP 动态规划

    有一个箱子容量为 V(正整数,0<=V<=20000),同时有 n 个物品(0<n<=30),每个物品有一个体积(正整数). 现在在 n 个物品中,任取若干个装入箱内,使得箱子 ...

  8. 动态规划求解装箱问题(洛谷P1049题题解,Java语言描述)

    题目要求 P1049题目链接 分析 这种题不能贪心,大家都懂的,应该使用DP. 比如容量为7,有三个物品体积是1,2,5,你要是先装小的,就只能装3,剩下4,但实际上可以装的只剩一个. 如果容量为10 ...

  9. 蓝桥杯 ALGO-21算法训练 装箱问题(动态规划,01背包)

    问题描述 有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数). 要求n个物品中,任取若干个装入箱内,使箱子的剩 ...

最新文章

  1. 零基础快速学习Java技术的方法整理
  2. 一年融4轮,虎赞科技完成红杉领投3000万美元B轮融资
  3. BrupSuite渗透测试笔记(十一)
  4. Redis的数据模型
  5. JSP 9 大内置对象详解
  6. Linux驱动入门基础基础知识
  7. android-studio add jar
  8. linux环境下内存溢出分析MAT
  9. 提供《疯狂的程序员》下载地址
  10. 网络克隆自动修改计算机名ip,GHOST网克专用IP及计算机名自动修改器
  11. D. Powerful array 莫队算法或者说块状数组 其实都是有点优化的暴力
  12. 图标圆角角度_教你在 iOS 和 macOS 上获取 App 图标
  13. CNDS-Markdown之公式编辑(二)
  14. R语言入门(3)——R包的使用
  15. cadence的PCB封装库导入Altium designer
  16. 3.2 发送请求参数
  17. 原生js实现canvas粒子特效
  18. C# 解决上传附件大小限制
  19. 百度之星2017资格赛1003 度度熊与邪恶大魔王
  20. 20154312 曾林 ExpFinal CTF Writeup

热门文章

  1. 驱动学习之LED驱动框架
  2. C语言两种查找方式(分块查找,二分法)
  3. JS学习笔记(一)DOM事件和监听
  4. PHP将XML转成数组
  5. JQery遍历方法each
  6. [LUOGU] P2330 [SCOI2005]繁忙的都市
  7. 博世发布7款传感器新品 从汽车到消费电子
  8. Solr 3.5:配置mmseg4j同义词(已经配置好中文分词)
  9. Mybatis之批量更新操作
  10. JAVA WEB新进展