暑假集训(5)第二弹———湫湫系列故事——减肥记I(hdu4508)
问题描述:舔了舔嘴上的油渍,你陷在身后柔软的靠椅上。在德源大赛中获得优胜的你,迫不及待地赶到“吃到饱”饭店吃到饱。当你
正准备离开时,服务员叫住了你,“先生,您还没有吃完你所点的酒菜。”指着你桌上的一片狼藉,不过仍有很多残余“军力”的景象。你刚刚还红光满面的脸一下变成霜打的茄子。看着桌上仍留的美食,正犯愁。“我可以帮你解决它。”你看向旁边,发现她也便是德源大赛
的参赛者啾啾。还没来得及说谢谢。她便提出了条件,给出食物所含能量、幸福度以及摄入最大能量限制,如何在不超过最大能量限制的
情况下获得最大幸福度。
问题分析:完全背包问题,当前状态更新如果(之前幸福度+新的幸福度)>当前幸福度。且能量不超过最大能量限制。
状态转移方程为 dp[i] =max (dp[i-power[i]] + power[i],dp[i]);其中减去power[i]是为了得到之前幸福度.
#include "cstdio"
int happy[];
int oil[];
int dp[];
void hbegin(int n)
{
for (int i=;i<n;i++)
{
scanf ("%d%d",&happy[i],&oil[i]);
}
for (int i=;i<;i++)
{
dp[i] = ;
}
}
int max(int x,int y)
{
return x>y?x:y;
}
int main()
{
int n,o;
while (scanf ("%d",&n) != EOF)
{
hbegin(n);
scanf ("%d",&o);
for (int i=;i<n;i++)
{
for (int j=oil[i];j<=o;j++)
{
dp[j] = max(dp[j-oil[i]]+happy[i],dp[j]);
}
}
printf ("%d\n",dp[o]);
}
return ;
}
暑假集训(5)第二弹———湫湫系列故事——减肥记I(hdu4508)的更多相关文章
- hdu4508 完全背包,湫湫系列故事——减肥记I
湫湫系列故事——减肥记I 对于01背包和完全背包,昨晚快睡着的时候,突然就来了灵感 区别:dp[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值 在第二重循环,01 是倒着循环的,因 ...
- 完全背包问题:湫湫系列故事――减肥记I(HDU 4508)
湫湫系列故事――减肥记I HDU 4508 一道裸的完全背包 #include<iostream> #include<algorithm> #include<stdio ...
- HDU 4508 湫湫系列故事——减肥记I(全然背包)
HDU 4508 湫湫系列故事--减肥记I(全然背包) http://acm.hdu.edu.cn/showproblem.php?pid=4508 题意: 有n种食物, 每种食物吃了能获得val[i ...
- HDUOJ----4509湫湫系列故事——减肥记II
湫湫系列故事——减肥记II Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Tot ...
- HDUOJ----湫湫系列故事——减肥记I
湫湫系列故事——减肥记I Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Tota ...
- HDOJ(HDU).4508 湫湫系列故事――减肥记I (DP 完全背包)
HDOJ(HDU).4508 湫湫系列故事――减肥记I (DP 完全背包) 题意分析 裸完全背包 代码总览 #include <iostream> #include <cstdio& ...
- G - 湫湫系列故事——减肥记I
G - 湫湫系列故事——减肥记I Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u De ...
- M - 湫湫系列故事——减肥记I
M - 湫湫系列故事--减肥记I 对于吃货来说,过年最幸福的事就是吃了,没有之一! 但是对于女生来说,卡路里(热量)是天敌啊! 资深美女湫湫深谙"胖来如山倒,胖去如抽丝"的道理,所 ...
- HDU 4508 湫湫系列故事——减肥记I (完全背包)
题意:有n种食物,每种食物可以给湫湫带来一个幸福感a,同时也会给她带来b的卡路里的摄入,然后规定她一天摄入的卡路里的量不能超过m,一共有n种食物,问可以得到的 最大的幸福感是多少? 解题报告:一开始以 ...
- 2013腾讯编程马拉松初赛第一场(3月21日) 湫湫系列故事——减肥记II ----线段树
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4509 虽然制定了减肥食谱,但是湫湫显然克制不住吃货的本能,根本没有按照食谱行动! 于是,结果显而易见… 但 ...
随机推荐
- Codeforces Gym 100650B Countdown DFS
Problem B: CountdownTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/conte ...
- setuptools的使用
1.什么是setuptools setuptoolssetuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,是Python distutil ...
- [Javascript] Monads
Monads allow you to nest computations. They are a pointed functor that adds mjoin and chain function ...
- mysql-----gtid_executed详解 原创
MySQL 5.6版本开启GTID模式,必须打开参数log_slave_updates, 简单来说就是必须在从机上再记录一份二进制日志.这样的无论对性能还是存储的开销,无疑会相应的增大 而MySQL ...
- SQL SERVER 中 GO 的用法2
具体不废话了,请看下文详解. 1 2 3 4 5 6 7 8 9 10 use db_CSharp go select *, 备注=case when Grade>=90 then '成绩 ...
- Android:Activity之间跳转和参数传递
一个activity就好比一个网页,此文章讲解怎样创建一个activity并且实现跳转! 一.学习创建Activity 1.新建一个java类,右击src目录,选择new-->class,新的a ...
- assets
我们知道assets/和res/文件夹用于存放可在应用程序中的使用文件. assets/用于存储各种应用程序中需要的文件(例如配置文件或音频文件等),这些文件会打包在Android应用程序中. res ...
- CCTableView的使用和注意事项
#include "cocos-ext.h" using namespace cocos2d::extension; class TableViewTestLayer: publi ...
- 杂乱无章之javascript(一)
1.in 要求第一个(左边的)操作数必须是字符串类型或是可以转化成字符串类型的其他类型,而第二(右边的)操作数必须是数组或对象.只有第一个操作数的值是第二个操作数的属性名,才会返回true,否则返回f ...
- oracle 排序
1.ORDER BY 中关于NULL的处理 缺省处理,Oracle在Order by 时认为null是最大值,所以如果是ASC升序则排在最后,DESC降序则排在最前. 当然,你也可以使用nulls f ...