[Usaco2008 Dec]Hay For Sale 购买干草
2024-08-30 17:18:38
Description
约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草. 顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买,他最多可以运回多少体积的干草呢?
Input
第1行输入C和H,之后H行一行输入一个Vi.
Output
最多的可买干草体积.
Sample Input
7 3 //总体积为7,用3个物品来背包
2
6
5
The wagon holds 7 volumetric units; three bales are offered for sale with
volumes of 2, 6, and 5 units, respectively.
Sample Output
7 //最大可以背出来的体积
这题没什么好说的了,一个裸的01背包,设f[i]代表能否凑出体积i,f数组为bool类型,然后转移就是f[i]=f[i]||f[[i-x];
#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define inf 0x7f7f7f
typedef long long ll;
typedef unsigned int ui;
typedef unsigned long long ull;
using namespace std;
inline int read(){
int x=0,f=1;char ch=getchar();
for (;ch<'0'||ch>'9';ch=getchar()) if (ch=='-') f=-1;
for (;ch>='0'&&ch<='9';ch=getchar()) x=(x<<3)+(x<<1)+ch-'0';
return x*f;
}
inline void print(int x){
if (x>=10) print(x/10);
putchar(x%10+'0');
}
const int N=1e4;
bool f[N+10];
int main(){
int n=read(),m=read();
f[0]=1;//什么都不选是成立的
for (int i=1;i<=m;i++){
int x=read();
for (int j=n;j>=x;j--) f[j]=f[j]||f[j-x];
//f[j]从f[j]转移过来代表不选x,从f[j-x]转移过来代表选x,j一定要从n开始倒着枚举,否则x会被选很多次(给不会DP的小朋友写的注释)
}
while (!f[n]) n--;//找到一个可行的最大的值
printf("%d\n",n);
return 0;
}
最新文章
- ORACLE 迁移MYSQL 随笔
- 网络热恋之XML解析
- java 15 - 8 集合框架(并发修改异常的产生原因以及解决方案)
- Jquery easyui treegrid实现树形表格的行拖拽
- logstash 安装WARNING: SSLSocket#session= is not supported
- Go语言之defer
- 常用的CSS清除浮动的方法优缺点分析(个人学习笔记)
- 提醒录入BOM更改原因
- 基于visual Studio2013解决算法导论之027hash表
- zabbix metrics
- 学习笔记——门面模式Facade
- Hadoop和MapReduce初识
- Visual Studio2010重新安装后,冲突问题
- jquert 判断checkbox 是否选中
- kubernetes系列03—kubeadm安装部署K8S集群
- Android Studio下添加assets目录
- ztree-持续更新中
- Python之生成器及内置函数篇4
- [ML学习笔记] XGBoost算法
- Dubbo阅读笔记——高级功能
热门文章
- Activiti-5.3工作流引擎-源码解析(流程文档解析)
- JAVA原始的导出excel文件,快捷通用 方便 还能够导出word文档哦
- CentOS5 忘记root密码的解决办法
- C++MFC编程笔记day06 MFC向导、MFC画图类使用
- Android开发——本地验证码的简易实现
- 关于Scrum
- 三. 200多万元得到的创业教训--创业并不须要app
- UVa 401 Palindromes(镜像回文字符串)
- 嵌入式开发之davinci--- 8148/8168/8127 中的图像缩放sclr、swms之后出现图像视频卡顿、屏幕跳跃的问题
- oracle 12c 13姨