问题描述
  有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。
  要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。
输入格式
  第一行为一个整数,表示箱子容量;
  第二行为一个整数,表示有n个物品;
  接下来n行,每行一个整数表示这n个物品的各自体积。
输出格式
  一个整数,表示箱子剩余空间。
样例输入
24
6
8
3
12
7
9
7
样例输出
0

分析:dp[i][j]表示前i件物品选则部分装入体积为j的背包后,背包总共所占的最大体积,
一共有n件物品,那么dp[n][v]就是前n件物品选择部分装入体积为v的背包后,背包总共占有的最大体积
1.当当前输入的物品体积大于背包容量,则不装入背包,dp[i][j] = dp[i-1][j];
2.当当前输入的物品体积小于等于背包容量,考虑装或者不装两种状态,取体积最大的那个:dp[i][j] = max(dp[i-1][j], dp[i-1][j-t] + t);

#include <iostream>
using namespace std;
int dp[31][20001];
int main() {int v, n;cin >> v >> n;for(int i = 1; i <= n; i++) {int t;cin >> t;for(int j = 1; j <= v; j++) {if (j >= t)dp[i][j] = max(dp[i-1][j], dp[i-1][j-t] + t);elsedp[i][j] = dp[i-1][j];}}cout << v - dp[n][v];return 0;
}

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

  1. 蓝桥杯:试题 算法训练 Remember the A La Mode

    蓝桥杯:试题 算法训练 Remember the A La Mode 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 Hugh Samston经营着一个为今年的ICPC世界总决赛的参 ...

  2. 矩阵乘法 算法训练 试题_蓝桥杯习题集_ 算法训练 矩阵乘法

    原文: 算法训练 矩阵乘法 时间限制:1.0s   内存限制:512.0MB 问题描述 输入两个矩阵,分别是m*s,s*n大小.输出两个矩阵相乘的结果. 输入格式 第一行,空格隔开的三个正整数m,s, ...

  3. 蓝桥杯:试题 算法训练 采油区域 矩阵前缀和+动态规划+分治+枚举

    资源限制 时间限制:2.0s 内存限制:512.0MB 采油区域 Siruseri政府决定将石油资源丰富的Navalur省的土地拍卖给私人承包商以建立油井.被拍卖的整块土地为一个矩形区域,被划分为M× ...

  4. java蓝桥杯的题_Java蓝桥杯试题集——算法训练ALGO-116——最大的算式

    题目要求 解题思路 动态规划,今天才弄明白QAQ,借鉴了这位大佬的博客,曹磊的博客 写的很好!但是我觉得我的循环方式更容易理解嘿嘿嘿~ 首先建立如下图的数组,行数代表前几位数,列数代表有几个乘号.将第 ...

  5. 蓝桥杯练习系统算法训练习题加答案java版本

    附上百度文库的链接:http://wenku.baidu.com/view/afb78d36b42acfc789eb172ded630b1c59ee9bf7 转载于:https://www.cnblo ...

  6. 蓝桥杯练习系统—算法训练 s01串

    第一部分:题目 问题描述 s01串初始为"0" 按以下方式变换 0变1,1变01 输入格式 1个整数(0~19) 输出格式 n次变换后s01串 样例输入 3 样例输出 101 数据 ...

  7. 蓝桥杯-黑色星期五(算法训练)

    题目描述: 有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是"诸事不宜".请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是1 ...

  8. 【算法】【蓝桥杯】试题 算法训练 黑心药商 ALGO-1002

    题目 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 JiaoShou消灭了百变怪,为爱琳世界赢得了和平,但他突然发现自己没有升级,这就意味着必须去喝药补血.爱琳世界的NPC卖的药已 ...

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

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

  10. 蓝桥杯备考-刷题之路-动态规划算法(DP算法)Part1

    之前在刷力扣的时候就是浑浑噩噩的,照着评论区的答案写了一遍就万事大吉了,没有深度思考过.这次备考蓝桥杯看到DP算法的第一道题就不会,更难受的是看答案了依然完全不理解,所以决心把DP算法一次弄懂. 开始 ...

最新文章

  1. oracle查询sql时间ain,Oracle SQL 时间查询
  2. LG能源解决方案去年年底已开始研发磷酸铁锂电池
  3. bll调用mysql存储过程_SQL Server的存储过程或自定义函数调用Com组件
  4. 【Xposed】框架安装full.xml.gz下载失败解决方法总结
  5. 优化方法总结(梯度下降法、牛顿法、拟牛顿法等)
  6. java实现公式解析
  7. 段码液晶屏实现原理和需要注意的事项
  8. 计算机学报在线阅读,ei收录的计算机类核心源:计算机研究与发展计算机学报软件.doc...
  9. iphone申请AppleID后无法登陆App Store
  10. javaweb调用python修改微信运动步数,使用小米运动接口
  11. Zynq术语详解,不懂啥是PL,PS,APU,SCU?那就进来看看吧
  12. 牛顿迭代法是一种速度很快的迭代方法,但是它需要预先求得导函数。若用差商代替导数,可得下列弦截法
  13. Android 使用ViewPager实现基本的翻页效果
  14. Linux:以K、M、G查看文件大小;
  15. 仿射函数的仿射函数还是仿射函数
  16. Python中的时间戳具体是什么
  17. MySQL实现排名、分组筛选、TopN问题
  18. Web项目中完成百度地图GPS定位
  19. 慕课网的python2020_2020中.国大学慕课Python开发入门答案
  20. Windows 98

热门文章

  1. 算法列表-java实现
  2. 基于注解的Spring MVC与JPA如何解决实体的延时加载问题
  3. 通过JDBC和Hibernate对Clob和Blob的操作
  4. CSS实现返回网页顶部
  5. 如何让pm2支持es6
  6. [WPF]有Focus(), 那Unfocus()呢?
  7. 使用SerialPort 对象实现串口拨号器通信[下]
  8. Linux gcc编译简介、常用命令
  9. springcloud(十):服务网关zuul初级篇
  10. 利用linux的mtrace命令定位内存泄露(Memory Leak)