DP小乐乐化妆品

Hrbust1814 http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1814

 1 #include<stdio.h>
 2 #include<iostream>
 3 #include<algorithm>
 4 #include<string.h>
 5 struct s
 6 {
 7     int c,val;
 8 }p[105];
 9 using namespace std;
10 int dp[1005];
11 int main()
12 {
13     int sum,v;
14     while(cin>>sum>>v){
15             memset(dp,0,sizeof(dp));
16         for(int i=0;i<sum;i++){
17             cin>>p[i].c>>p[i].val;
18         }
19     for(int i=0;i<sum;i++){
20         for(int j=v;j>=p[i].c;j--){
21             dp[j]=max(dp[j],dp[j-p[i].c]+p[i].val);
22
23         }
24     }
25     cout<<dp[v]<<endl;}
26
27
28 }

时间: 2024-10-07 22:47:39

DP小乐乐化妆品的相关文章

HLG 1813 小乐乐要下山 (dp)

链接: http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1813 Description 上学的路总是那么艰辛,在小乐乐辛苦的出了家门之后,她才想起自己的家已经搬到山上了(睡的真迷糊).下山的路同样十分艰难,不同的地方通行的难易程度也不同.如图所示,小乐乐现在在山顶上,她面前有两条路,每条路通往一个地点,每个地点有一个值,表示这个通行的难易程度.最底层的地点就是山脚了.大家知道,小乐乐好懒好懒

小乐乐要下山(脑残动态规划记录路径)

哈尔滨理工大学OJ上的题目,水是很水,结果我做了好久,发现题中要循环输入,我也是醉了. 题目很简单但是心里不平衡决定发一下. Description 上学的路总是那么艰辛,在小乐乐辛苦的出了家门之后,她才想起自己的家已经搬到山上了(睡的真迷糊).下山的路同样十分艰难,不同的地方通行的难易程度也不同.如图所示,小乐乐现在在山顶上,她面前有两条路,每条路通往一个地点,每个地点有一个值,表示这个通行的难易程度.最底层的地点就是山脚了.大家知道,小乐乐好懒好懒的,她想知道怎么下山最省力? Input 第

HUST第八届程序设计竞赛-G小乐乐打游戏(双bfs)

题目描述 小乐乐觉得学习太简单了,剩下那么多的时间好无聊,于是便想打游戏.        最近新出了一个特别火的游戏,叫吃猪,小乐乐准备玩一玩.        吃猪游戏很简单,给定一个地图,大小为n*m,在地图中会随机出现一个火山口,只要小乐乐能逃离这个地图,他便能吃猪!         但吃鸡远没有那么简单:        1.小乐乐每走一次只能上下左右四个方向中走一步.        2.小乐乐每走一步,火山喷发的岩浆就会向四周蔓延一个格子,所有岩浆走过的地方都视为被岩浆覆盖.       

小乐乐打游戏

题目描述 小乐乐觉得学习太简单了,剩下那么多的时间好无聊,于是便想打游戏.         最近新出了一个特别火的游戏,叫吃猪,小乐乐准备玩一玩.         吃猪游戏很简单,给定一个地图,大小为n*m,在地图中会随机出现一个火山口,只要小乐乐能逃离这个地图,他便能吃猪!          但吃鸡远没有那么简单:         1.小乐乐每走一次只能上下左右四个方向中走一步.         2.小乐乐每走一步,火山喷发的岩浆就会向四周蔓延一个格子,所有岩浆走过的地方都视为被岩浆覆盖.  

数位DP小小结

FZOJ Problem 2113Jason的特殊爱好 题意:x~y数字里面有多少个 1 思路:我们算法课实验题的简化版,当时我用了很麻烦的一个DP=_= 刚刚学到了很棒的姿势,记忆化DP!! dfs(int pos ,bool end1) ; end1==false 返回pos位后面(包含pos)任意组合有多少个 1 : end1==true 返回上一位是结尾,Pos以后的位受到限制组合有多少个 1 : 大概是这样,如果数字是 4987 现在计算到 8 这个数字,end1==true,说明是4

hdu4734 数位dp + 小技巧

hdu-4734 题意:假设x的10进制数每一位分别为(AnAn-1An-2 ... A2A1),定义  F(x) = An * 2n-1 + An-1 * 2n-2 + ... + A2 * 2 + A1 * 1,求1-b中F(x)<=F(a)的数有多少个 思路:其实F(x)只是给每一个数位带上一个权值v=2^(p-1),F(x)最大是值不会超过5000,我们完全可以抛开权值来思考,写代码的时候再加上权值即可,这样思考和写草稿之类的会方便很多,不考虑每一位的权值的话即是数位的前缀和, 很容易想

【树形dp小练】HDU1520 HDU2196 HDU1561 HDU3534

[树形dp]就是在树上做的一些dp之类的递推,因为一般需要递归处理,因此平凡情况的处理可能需要理清思路.昨晚开始切了4题,作为入门训练.题目都非常简单,但是似乎做起来都还口以- hdu1520 Anniversary party 给一颗关系树,各点有权值,选一些点出来.任一对直接相连的边连接的点不能同时选择,问选择出的权值和最大为多少. 考虑以u为根的子树可以选择的方法,dp[u]表示选择u时能获得最大收益,dp2[u]表示不选u时能获得的最大收益.则u不选时,为dp2[u]=max{dp[v]

数位dp小练

最近刷题的同时还得填填坑,说来你们也不信,我还不会数位dp. 照例推几篇博客: 数位DP讲解 数位dp 的简单入门 这两篇博客讲的都很好,不过代码推荐记搜的形式,不仅易于理解,还短. 数位dp的式子一般是这样的:dp[i][][]表示到第\(i\)位,而后面几维就因题而异了. 不过通用的思想就是利用前缀相减求出区间信息. 算了上题吧. [SCOI2009]windy数 这都说是数位dp入门题. 根据这题,受到影响的数只有相邻两个,因此dp[i][j]表示到第\(i\)位(从高往低)上一位的数\(

DP小题集

P2736 "破锣摇滚"乐队 Raucous Rockers 你刚刚继承了流行的"破锣摇滚"乐队录制的尚未发表的N(1 <= N <= 20)首歌的版权.你打算从中精选一些歌曲,发行M(1 <= M <= 20)张CD.每一张CD最多可以容纳T(1 <= T <= 20)分钟的音乐,一首歌不能分装在两张CD中.CD数量可以用完,也可以不用完 不巧你是一位古典音乐迷,不懂如何判定这些歌的艺术价值.于是你决定根据以下标准进行选择: 1