【01背包】贝克汉姆 beckham
贝克汉姆
beckham.pas/c/cpp
1S/256MB
【题目描述】
作为铁杆的贝克汉姆迷,silentsky很希望beckham能够重新恢复到巅峰状态,再次出现在世界杯赛场上!于是silentsky去找上帝索要返老还童丹,但是上帝需要一种动力,他需要关于David Beckham的纪念品。身为贝迷的silentsky历经千辛万苦找了N个体积为Vi的关于David Beckham的纪念品,每件物品都有wi的纪念价值,他需要把这些物品带给上帝,遗憾的是,他只有一个容量为V的背包。为了表达自己的虔诚,希望David Beckham能够重返世界杯赛场,他希望带上的物品的纪念价值最大。
【输入】
输入文件:beckham.in
输入的第一行为两个整数N和V。分别代笔纪念品的数量和silentsky拥有的背包的体积容量。
接下来的N行,每行2个数字vi, wi分别表示第i件纪念品的体积和纪念价值。
【输出】
输入文件:beckham.out
输出为一行,包含一个整数。表示silentsky能够带给上帝的虔诚的礼物的最大纪念价值。
【输入样例】
5 100
77 92
22 22
29 87
50 46
99 90
【输出样例】
133
【数据范围】
对于100%的数据,1<=N<=5000,1<=V<=5000,0<=vi<=V,0<=wi<=5000
很裸的01背包,没什么说的,直接AC
C++ Code
/*
C++ Code
http://blog.csdn.net/jiangzh7
By Jiangzh
*/
#include<cstdio>
#include<algorithm>
using namespace std;const int MAXN=5000+10;int n,m;
int v[MAXN],w[MAXN];
int f[MAXN];void read()
{freopen("beckham.in","r",stdin);freopen("beckham.out","w",stdout);scanf("%d%d",&n,&m);for(int i=1;i<=n;i++) scanf("%d%d",&v[i],&w[i]);
}void work()
{for(int i=1;i<=n;i++)for(int j=m;j>=v[i];j--)f[j]=max(f[j],f[j-v[i]]+w[i]);int ans=0;for(int j=0;j<=m;j++) ans=max(ans,f[j]);printf("%d",ans);
}int main()
{read();work();return 0;
}
【01背包】贝克汉姆 beckham相关推荐
- 浅说——九讲背包之01背包
所谓九讲,也就是: 0/1背包 0/1背包降维 完全背包 多重背包(二进制优化) 混合背包 二维费用背包 分组背包 有依赖的背包 背包的方案总数\背包的具体方案路径 0/1背包: [问题描述](经典) ...
- Codeforces Round #104 (Div. 2) E DP(01背包模型) +组和+除法取模求逆元
题意: 规定只包含4或7的数为幸运数字,给定n个数的序列,求他的子序列,使得该子序列的长度为k并且满足该子序列中不存在相同的两个幸运数字.问一共寻在多少种可能.(只要该数的下标不同则认为是不同的序列) ...
- 最小邮票数(01背包)
题目描述 有若干张邮票,要求从中选取最少的邮票张数凑成一个给定的总值. 如,有1分,3分,3分,3分,4分五张邮票,要求凑成10分,则使用3张邮票:3分.3分.4分即可. 输入描述: 有多组数 ...
- NYOJ 860 又见01背包
有n个重量和价值分别为wi 和 vi 的 物品,从这些物品中选择总重量不超过 W 的物品,求所有挑选方案中物品价值总和的最大值. 1 <= n <=100 1 <= wi < ...
- 背包问题(多重背包+0-1背包)
一:0-1背包问题 #include<iostream> #include<algorithm> #include<cstring> const int maxn= ...
- 背包模型dp1:01背包,完全背包,多重背包的两大优化的详解
01背包问题: 状态表示:f[i][j]表示从只从前i个物体里面选,切总体积不超过j的选法的集合状态表示:f[i][j]表示从只从前i个物体里面选,切总体积不超过j的选法的集合状态表示:f[i][j] ...
- CF3B Lorry (手动模拟01背包,贪心)难度⭐⭐⭐
这道题洛谷上的翻译是错的,最后输出格式那里应该是输出一行所选物品的编号,中间用空格隔开 手动模拟01背包 这道题看上去很像是01背包的模板题,但是很明显,v=1e9,正常的01背包是肯定会爆掉62MB ...
- 【每日DP】day4 P1417 烹调方案(奇怪的01背包增加了)难度⭐⭐⭐
P1417 烹调方案 每件物品只有一个,很明显是01背包,但是价值的转换方式不同,是要求 ai−t∗bia_i-t*b_iai−t∗bi 尽可能最大.普通的01背包的价值是不变的,而这一道题目中的 ...
- 【每日DP】day1 P1802 5倍经验日(别样的01背包)难度⭐★
题目链接 输入 6 8 21 52 1 21 70 5 21 48 2 14 38 3 14 36 1 14 36 2 输出 1060 一道有点意思的01背包,可以帮助理解.好久没写DP了,每天一道D ...
最新文章
- Xamarin.FormsShell基础教程(2)创建Shell解决方案
- docker build 指定dockerfile
- 大学 University
- 源码篇:Python 实战案例----银行系统
- jsp用tags传递参数
- 多线程扫描网络计算机
- STM32:Code、RO、RW、Zi含义
- 谷歌Deep Dream解析(附源代码,可以直接运行)
- 文本区域css,如何知道文本从一个CSS区域溢出到另一个区域?
- mysql sql语句 参数化_参数化SQL语句
- node.js——uploads上传文件(multer)
- 什么互动管理必将风行于天下?(转)
- CCSv5.3的安装
- 复杂字云简单做,随时做好装逼的准备
- 【微信小程序】上传文件到阿里云OSS
- Java程序猿必学第十一篇——接口
- Trash Problem
- 洛谷刷题——P1255 数楼梯
- 怎么通过微信开发者工具打开一个项目
- 【快应用】折叠屏手机打开快应用页面重新加载问题
热门文章
- C语言素数因子思路,完美解决质因子(素数+因数)(C语言代码)
- go 使用gooxml 操作Excel
- Android 反编译获取class代码
- python实现坐标系转换_(数据科学学习手札60)用Python实现WGS84、火星坐标系、百度坐标系、web墨卡托四种坐标相互转换...
- 【移动端】vue宣传海报拼接二维码
- java学习-网络编程
- 供应链支付电商流程图是什么样的?如何绘制
- 单片机补充案例--LED数码管99秒倒计时
- 计算机组成原理选择题(带答案)
- c语言用while循环实现n,c语言while循环例子 C语言中while(n)是什么意思