8615 快乐

时间限制:500MS 代码长度限制:10KB
提交次数:312 通过次数:98

题型: 编程题 语言: G++;GCC
Description
Lian是一个喜欢看动画片的人,自从成为ACMer(ACM爱好者)之后,他又迷上了网上做题。做题让他快乐,不过这也是需要付出精力的!!
假设有n道题,Lian做出第i道题后,他可以获得的快乐指数将增加gethappy[i],而消耗掉的精力将是losspow[i]。
假设Lian初始的快乐指数为1,精力为2000。可以理解,如果他消耗完了所有的精力那他得到再多的快乐都没有用。
你的任务就是帮他计算他所能得到的最多的快乐指数,且最后他依然有多余的精力(即至少为1)。

输入格式
第一行输入一个整数n,表示有n道题。(n<=50)
第二行输入n个整数,表示gethappy[1]到gethappy[n]
第三行输入n个整数,表示losspow[1]到losspow[n]。

输出格式
一个整数,表示Lian所能获得的最大快乐指数。

输入样例
3
15 23 61
350 1301 1513

输出样例
77

总结:

设dp[i][j]在选择第i个物体时(此时背包容量为j)时的最优快乐指数(物体从0开始),首先对dp[0][j]初始化,即只有精力j时是否选择第0个物体的最优解。根据0-1背包模型;从第1至第n-1个物体,只存在两种情况,选取或者不选取。选取时,需判断dp[i-1][j],dp[i-1][j-losspow[i]]+gethappy[i]谁为最优,不选取时,直接等于 dp[i][j]=dp[i-1][j]。最后答案输入dp[n-1][2000]加一即可。
注意这里的dp[51][2001]是指最多50个物品和2000个精力,对于第一个if,dp[i-1][j-b[i]]是指i物品之前的剩余的精力(在这里已经是该物品的最优解),max则是看看加上这个第i个物品好,还是不加上这第i个物品好。

#include <iostream>
using namespace std;
int main() {int n;int get,loss;loss=2000;get=1;cin>>n;int a[n],b[n];int dp[51][2001];for(int i=0;i<n;i++)cin>>a[i];for(int i=0;i<n;i++)cin>>b[i];for(int j=0;j<=2000;j++)//初始化第一行{if(j>b[0])dp[0][j]=a[0];else dp[0][j]=0;}for(int i=1;i<n;i++){for(int j=0;j<=2000;j++){if(j>b[i])dp[i][j]=max(dp[i-1][j],dp[i-1][j-b[i]]+a[i]);elsedp[i][j]=dp[i-1][j];}}cout<<dp[n-1][2000]+1<<endl;return 0;
}

SCAU 8615 快乐相关推荐

  1. 2022年SCAU计算智能题库

    目录 头文件及宏定义 基础 18104 练习使用多case解题 注意事项: 代码实现: 递归和分治 (Recursion and Divide and Conquer) 1142 巡逻的士兵 注意事项 ...

  2. SCAU《程序设计与算法基础》(原名计算智能)题库整理

    目录 前言 18104 练习使用多case解题 18276 走迷宫 18440 走迷宫2 19116 丑数 18005 它不是丑数 19121 小明手上的牌 18105 银行的叫号顺序 18118 勇 ...

  3. 2021计算智能期末复习

    题1:18005 It is not ugly number 题目描述 18005 It is not ugly number 时间限制:2000MS 代码长度限制:10KB 提交次数:0 通过次数: ...

  4. 用乐观的心态去面对生活,能让你的生活过得更加快乐

    生活中,无论我们有着怎样的经历,都要用乐观的心态去面对生活,我们才能够经受住一些突如其来的变故,当你能把所发生的变故处理好,你的生活就会过得更轻松快乐. 我觉得,人的生活最重要的是快乐和舒适.生活中有 ...

  5. 计算机在幼儿园美术区域的应用,让幼儿在美术区域活动中快乐成长!

    原标题:让幼儿在美术区域活动中快乐成长! 点击上方蓝字关注我们,获取更多专业信息... 美术区域活动具有体现幼儿的自主性.多种创作形式和技法并用.多种互动形式并存等特点.设计美术区域活动时应注意:充分 ...

  6. 编写文档_如何通过编写优质文档来使自己的未来快乐

    编写文档 by Gabriele Cimato 加布里埃莱·西马托(Gabriele Cimato) 如何通过编写优质文档来使自己的未来快乐 (How to make your future self ...

  7. LeetCode实战:快乐数

    题目英文 Write an algorithm to determine if a number is "happy". A happy number is a number de ...

  8. 假期快乐!超强面试资源等你Pick,先收藏!

    整理 | Jane 出品 | AI科技大本营 [导读]准备面试不是一件简单的事情,本文的作者在过去一段时间先后参加 50 多次面试.过程是艰难的,但是在这个过程中也积累了一些非常有用的资源.今天 AI ...

  9. AI一分钟|研究人员证明“金钱真的可以买到快乐”;特斯拉中国梦面临威胁

    1. 研究人员证明"金钱真的可以买到快乐" 我们会经常听到"金钱无法买到快乐"的说法,但是新的研究表明这不是真的.事实证明,金钱的确可以让一个人开心,但究竟需要 ...

最新文章

  1. 少儿编程python课程-选好课程很重要,极客晨星让孩子喜欢上少儿编程
  2. php教程数据库操作,PHP实现对文本数据库的常用操作方法实例演示_PHP教程
  3. ReentrantLock与公平锁、非公平锁实现
  4. [代码]HDU 4335 What is N?
  5. 开车走吗?朋友......
  6. 大话云时代rac_网易Q1财报中的增长信号:有道和云音乐如何打通“任督二脉”?...
  7. android学习笔记---63-PopupWindow,泡泡窗口的实现
  8. 狂人日记学习 之七 三列浮动中间列宽度自适应
  9. PHP安装kafka扩展
  10. 【对讲机的那点事】玩无线电,你知道无线电信号是怎样发送和接收的?
  11. Vue+ElementUI+Tabs实现选项卡|标签页|美化标签页面|局部替换样式|好看的标签页|选项卡
  12. linux课程--实验二 Linux 基本命令操作2
  13. 华为荣耀所有系列手机,如何安装谷歌应用框架?
  14. WordPress缩略图美化插件ThnBoV1.3.1ThnBo
  15. matlab减小数据方差,最小方差控制
  16. 在互联网上传输文件 —— FTP协议
  17. map_server介绍及参数说明
  18. js学习20-(svg)
  19. 智能全景汽车3D建模VR模型虚拟交互三维在线展示
  20. 定义域是取交集吗_定义域是交集还是并集

热门文章

  1. 刘邦韩信java_刘邦为什么叫韩信雏儿 刘邦杀韩信后悔了吗
  2. 使用fiddler 分析视频网站
  3. react引入d3相关问题
  4. C++小游戏(第五弹)
  5. Android基础知识精简版(转)
  6. 中国化学原料药行业投资风险与盈利模式分析报告2022版
  7. 淘宝新自动化测试框架AutoRobot简要介绍
  8. 第8节 实例-写个简单的操作器
  9. 调节音量的各个方法——AudioManager的使用
  10. 安装OpenSSH服务