1267: Cafeteria [DP]

时间限制: 1 Sec 内存限制:
128 MB

提交: 76 解决:
31 统计

题目描述

Nanae把饥肠辘辘的josnch带去一家自助餐厅,面对面前眼花缭乱的美味josnch呆住了。

假设有N种食物,每种食物只有一样,而且每种食物有对应的体积Wi (1 <= Wi <= 400),食用每一种食物都能增加对应的愉悦值Di(1 <= Di <= 100).

现在已知josnch肚子的容量为M(1 <= M <= 12,880),现在假设josnch足够聪明,请问他如何选择能在可接受的范围内达到愉悦值最大。

输入

第一行输入两个整数,N和M。

第二行到第N+1行输入每行两个整数,Wi 和 Di ,分别代表 第i件物品的体积和所能带来的愉悦值。

输出

输出一个整数,也就是在最佳选择下的愉悦值。

样例输入

4 6
1 4
2 6
3 12
2 7

样例输出

23

解题思路:01背包更新数组之后,找到数组中的最大值输出(可以想一下为什么使用01背包之后还需要求数组中的最大值?)

代码如下:

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<ctype.h>
#include<stdlib.h>
#include<queue>
#include<algorithm>
#define N 13000
using namespace std; int M[13000],W[13000],D[13000];
int main()
{
int n,m,i,j,maxx;
while(~scanf("%d%d",&n,&m)){
memset(M,0,sizeof(M));
for(i=0;i<n;i++){
scanf("%d %d",&W[i],&D[i]);
}
for(i=0;i<n;i++){
for(j=m;j>=W[i];j--){
M[j]=max(M[j],M[j-W[i]]+D[i]);
}
}
maxx=0;
for(i=0;i<=m;i++){
if(maxx<M[i])
maxx=M[i];
}
printf("%d\n",maxx);
}
return 0;
}

hpu 1267 Cafeteria (01背包)的更多相关文章

  1. UVALive 4870 Roller Coaster --01背包

    题意:过山车有n个区域,一个人有两个值F,D,在每个区域有两种选择: 1.睁眼: F += f[i], D += d[i] 2.闭眼: F = F ,     D -= K 问在D小于等于一定限度的时 ...

  2. POJ1112 Team Them Up![二分图染色 补图 01背包]

    Team Them Up! Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7608   Accepted: 2041   S ...

  3. Codeforces 2016 ACM Amman Collegiate Programming Contest A. Coins(动态规划/01背包变形)

    传送门 Description Hasan and Bahosain want to buy a new video game, they want to share the expenses. Ha ...

  4. 51nod1085(01背包)

    题目链接: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1085 题意: 中文题诶~ 思路: 01背包模板题. 用dp[ ...

  5. *HDU3339 最短路+01背包

    In Action Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  6. codeforces 742D Arpa's weak amphitheater and Mehrdad's valuable Hoses ——(01背包变形)

    题意:给你若干个集合,每个集合内的物品要么选任意一个,要么所有都选,求最后在背包能容纳的范围下最大的价值. 分析:对于每个并查集,从上到下滚动维护即可,其实就是一个01背包= =. 代码如下: #in ...

  7. POJ 3624 Charm Bracelet(01背包)

    Charm Bracelet Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 34532   Accepted: 15301 ...

  8. (01背包变形) Cow Exhibition (poj 2184)

    http://poj.org/problem?id=2184   Description "Fat and docile, big and dumb, they look so stupid ...

  9. hdu3339 In Action(Dijkstra+01背包)

    /* 题意:有 n 个站点(编号1...n),每一个站点都有一个能量值,为了不让这些能量值连接起来,要用 坦克占领这个站点!已知站点的 之间的距离,每个坦克从0点出发到某一个站点,1 unit dis ...

随机推荐

  1. Java基础部分二

    1.&与&& &位运算符,&&逻辑与运算符&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式 2.switch ...

  2. 【第十章】 springboot + logback

    logback是boot默认的日志首选,个人觉得是最好的日志实现(比log4j好) 下边,在之前的代码基础上增加一个功能,该功能要实现mybatis的and or联查功能,并通过logback日志在控 ...

  3. [bzoj 1270][BeijingWc2008]雷涛的小猫

    Description 雷涛的小猫雷涛同学非常的有爱心,在他的宿舍里,养着一只因为受伤被救助的小猫(当然,这样的行为是违反学 生宿舍管理条例的).  在他的照顾下,小猫很快恢复了健康,并且愈发的活泼可 ...

  4. confluence导出pdf 文字显示不全

    当使用confluence编辑页面时,当一行的文字过多,且中间没什么逗号分隔时,有时会出现导出的pdf文件中,这一行显示的文字不全的情况. 如: 很明显费用的费字没有显示完全,且后面还有其他的字. 可 ...

  5. editplus5激活码

    editplus5激活码 name: Vovan code: 3AG46-JJ48E-CEACC-8E6EW-ECUAW 转自:https://blog.csdn.net/webfront/artic ...

  6. S3 对象

    在 R 中,S3 对象系统是一个简单且宽松的面向对象系统.每个基本对象的类型都有一个 S3 类名称.例如:integer.numeric.character.logical.list 和 data.f ...

  7. js实现滑动拼图验证码

    js实现滑动拼图验证码,我这个样式是仿那些大网站做了, 学习用的,只用到前端. 小的个人网站感觉还可以用,大一点的别人用机器一下就破解了. 下面看图示: 样子大概是这样的. 源码在这 百度网盘:    ...

  8. Codeforces 918D - MADMAX

    918D - MADMAX 思路: dp+记忆化搜索 状态:dp[i][j][w]表示先手在i节点,后手在j节点,这一轮的字母为w的结果,如果为true,则表示先手必赢,否则后手必赢. 状态转移:如果 ...

  9. ASCII 可打印字符与控制字符

    2017-08-16 21:29:30 基本的 ASCII 字符集共有 128 个字符,其中有 95 个可打印字符,包括常用的字母.数字.标点符号等,另外还有 33 个控制字符.标准 ASCII 码使 ...

  10. 深入理解Java中配置环境变量

    深入理解Java中配置环境变量 配置的目的: 本来只在安装JDK的bin目下能运行java.exe,javac.exe,jar.exe,javadoc.exe等Java开发工具包命令,我们现在想让在所 ...