博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
8615 快乐
阅读量:6333 次
发布时间:2019-06-22

本文共 1731 字,大约阅读时间需要 5 分钟。

时间限制:500MS  内存限制:1000K

提交次数:312 通过次数:98

题型: 编程题   语言: C++;C

 

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所能获得的最大快乐指数。

 

输入样例

315 23 61350 1301 1513

 

输出样例

77
#include
int max(int a, int b){ if (a > b) return a; else return b;}int n;int happymax[10000][100];int gethappy[100];int losspow[100];int getmax(int pow, int n){ int retmax; if (happymax[pow][n] != -1) retmax = happymax[pow][n]; else if (n == 0) { if (pow > losspow[n]) retmax = gethappy[n]; else retmax = 0; } else if (pow >= losspow[n]) retmax = max(getmax(pow - losspow[n], n - 1) + gethappy[n], getmax(pow, n - 1)); else retmax = getmax(pow, n - 1); happymax[pow][n] = retmax; return retmax;}int main(){ int i, j; scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", &gethappy[i]); for (i = 0; i < n; i++) scanf("%d", &losspow[i]); for (i = 0; i <= 2000; i++) for (j = 0; j < n; j++) happymax[i][j] = -1; printf("%d", getmax(2000, n - 1) + 1); return 0;}/*对于这n道题,lian要么就做出来,要么就没有做出来(对一道题重复做没什么意义),我们假设lian是从第1题开始做,直到去做第n道题,对这n道题编号如下 1 2 3 4 5 6 7 。。。(n-1)定义数组losspow[55]表示做出第i道题需要消耗的pow值定义数组gethappy[55]表示做出第i道题获得的happy值定义二维数组maxhappy[2020][55]作为状态,表示前i道题获得的最大快乐值(注意这里的前i道题是从0开始数)我们对问题的最后一个步骤进行思考*/

 

 

转载于:https://www.cnblogs.com/orchidzjl/p/4239911.html

你可能感兴趣的文章
日本法院裁定三星诉苹果专利侵权案败诉
查看>>
Windows Server 2012R2 桌面体验问题直通车
查看>>
桌面支持--复印证件技巧
查看>>
Silverlight实用窍门系列:50.InkPresenter涂鸦板的基本使用,以及将效果保存为Png图片【附带源码实例】...
查看>>
MySQL数据库经典书籍share
查看>>
给出三个数,要求输出 最大的一个
查看>>
Linux系统中获取帮助的方法及Linux系统的哲学思想
查看>>
在windows环境创建,安装windows服务
查看>>
Nginx请求反向代理
查看>>
golang的GJSON库
查看>>
mybatis 中的<![CDATA[ ]]>
查看>>
Springboot配置文件读取报错Configuration property name 'projectUrl' is not valid:
查看>>
HTTP状态码
查看>>
今天的学习
查看>>
面试必问之JVM原理
查看>>
linux批量修改文件名大小写
查看>>
我的友情链接
查看>>
CSS预处理器-Sass
查看>>
mysql主主同步+Keepalived
查看>>
F5 负载均衡学习笔记----V9.x启动U盘制作方法
查看>>