题目描述

在游中有个爬塔玩法,这个玩法由N个标号为0到N-1顺序连接的房间组成,玩家初始有H点血量,进入0号房间

在第i个房间内玩家可以选择以下两种操作之一:
·在这个房间内战斗,玩家会损失Xi点血量,获得Yi点经验,战斗结束后如果剩余血量大于0,则进入顺序连接的下一个i+1号房间,如果血量小于等于0游戏结束
·损失Zi点血量, 跳过这个房间进入顺序连接的下个i+1号房间,如果当前跳过的房间标号是N-1,则此次跳过操作后游直接结束

任何时候当玩家血量小于等于0时,或者玩家离开N-1号房间时,游教结束

请在给定N,H,以及每个房间的Xi,Yi,Zi的数值下,玩家采用最优策略玩游戏可以获得的最大总经验值是多少

0 < N,Xi,Yi,Zi <= 100, 0 < H <= 1000,

输入描述:

每组输入数据两行
第一行包括两个整数,N,H,0 < N <= 100,0 < H <= 1000 第二行包括3*N个整效,
分别是按顺序每个房间的Xi,Yi,Zi,0 < Xi,Yi,Zi <= 100

输出描述:

请输出一个整数,玩家采用最优策略玩游戏可以获得的最大总经验值

示例1 输入输出示例仅供调试,后台判断数据一般不包含示例
输入

3 1000
900 100 500 900 100 400 500 900 1000

输出

900

求解思路:利用递归方法求解

#include <iostream>
#include <algorithm>
using namespace std;int N,X[100],Y[100],Z[100];int fight(int i, int ex, int h);
int goNextRoom(int i, int ex, int h);
int getMaxExperience(int i, int ex, int h);int main(){int H;cin >> N >> H; for(int i=0; i<N; i++){cin >> X[i] >> Y[i] >> Z[i]; }int maxEx = getMaxExperience(0, 0, H);   cout << maxEx << endl;return 0;
}//选择战斗
int fight(int i, int ex, int h){return getMaxExperience(i+1, ex+Y[i], h-X[i]);
} //选择跳过此房间,进入下一个房间
int goNextRoom(int i, int ex, int h){return getMaxExperience(i+1, ex, h-Z[i]);
}//求可以获得的最大经验值
int getMaxExperience(int i, int ex, int h){int maxEx=ex,ex1=0,ex2=0;if(h>0 && i<N){maxEx = max(fight(i,ex,h),goNextRoom(i,ex,h));}    return maxEx;
}

网易2019年春招笔试:爬塔玩法相关推荐

  1. 网易2019年春招笔试:输出对应格子的数值

    题目描述 将从0开始的自然数按照以下的规则放置在一个无限大的网格上: 0 放置在坐标为 (0, 0) 的格子上 1 放置在 0 右侧的格子 (1, 0) 上 后续的数字围绕已经放置的数字逆时针循环 如 ...

  2. 招银网络科技2019年春招笔试面试总结

    笔者是2月底参加招银春招笔试的,笔试和第一轮面试都在当天进行,所以有可能笔试时被叫去面试.如果一轮面试通过了的话,一般在一周内会收到二轮面试通知.下面是对笔试和两轮面试相关问题的回忆,不全面也可能不完 ...

  3. 网易2017春招笔试真题编程题集合

    网易2017春招笔试真题编程题集合 题目来源:牛客网 https://www.nowcoder.com/profile/7952866/test/7811777/83061 1.双核处理 题目描述 一 ...

  4. 快手2019春招笔试编程题

    快手2019春招笔试编程题 第一题 输入描述 输出描述 分析 代码 第二题 输入描述 输出描述 分析 代码 第三题 输入描述 输出描述 分析 代码 个人主页:http://redtongue.cn o ...

  5. 谨以此文纪念2019年春招

    谨以此文纪念2019年春招 前言 整个三四月,一直在背知识点,感觉好多内容没有复习到位. 每天刷着leetcode和ZOJ,逛着牛客网看又有哪家开始面试,每天的心情就像一个"W". ...

  6. 网易云信助春招上“云” ,疫情过后线上招聘或成常态

    网易2021届春招视频面试专用洽谈室 又是一年"金三银四",人才市场熙熙攘攘,HR们四处寻觅,春招也陆续展开,应届生纷纷抓紧最后一次上车的机会.但疫情的发生,让线下招聘的推进成为难 ...

  7. 华为2018春招笔试题目 字节流解析与长整数相乘

    基础知识杂烩: 字节也叫Byte,是计算机数据的基本存储单位, bit存储内容是0和1,bit是计算机中最小的储存单位 一个Byte是由8个bit组成,它是最小的可寻址单元 ,1个字节等于8位二进制. ...

  8. 京东2019年春招题(前端)

    京东2019年春招题 最长区间 思路: 把字符串与自身拼接,找新字符串中的连续1的区间长度,考虑原字符串全为1或全为0的情况, coding #include<bits/stdc++.h> ...

  9. 2021中国农业银行(浙江省分信息科技岗)春招笔试编程题(待更)

    2021中国农业银行春招笔试共计三道编程题题目,详解如下: 题目一 def list_to_set(ls):len_ls = ls[-1] - ls[0]ls0 = [ls[0]]for i in r ...

最新文章

  1. python零基础有用吗-10天搞定Python,告诉你有什么用?
  2. 做支付遇到的HttpClient大坑(一)
  3. hd3000黑苹果_我的电脑可以安装黑苹果吗?
  4. springboot如何盈利_彻底透析SpringBoot jar可执行原理
  5. nRF5_SDK_12.3.0 编译micro-ecc摘要
  6. 有用的linux命令笔记
  7. fclose用法matlab,fclose和close之间的区别
  8. 笔记本电脑修改BIOS及刷写教程
  9. Ubuntu 18.04 增加swap空间 亲测有效
  10. win10解决设置默认打开方式不生效问题(双击每次都要选择默认打开程序)
  11. linux设备模型——总线,驱动,设备间的关系
  12. excel表格怎么调整行高和列宽_wps表格课程08|调整行高列宽
  13. 最大似然函数及其求解
  14. ubuntu16.04 basler相机 图像采集卡设置
  15. 设计模式(单一职责原则)
  16. 使用beecloud和easychat 做微信H5 微信公众号支付遇到的坑
  17. 【论文阅读】SML:标准最大logits
  18. 2021年中国锰酸锂行业现状分析:产量同比增长45.9%[图]
  19. 第一课《linux入门基础》
  20. python使用turtle画一个三角形、正方形(矩形或四边形)

热门文章

  1. 照相机的计算机微处理器芯片是什么,芯片到底是什么?
  2. java 营业执照图片内容识别
  3. Vue和SuperSlide做轮播效果
  4. 微信公众号 多台服务器,在多台 Linux 服务器上搭建 Pulsar 集群
  5. 小米路由器3G建站折腾笔记6 - 总结
  6. Android开发 打造自己的Annotation框架
  7. 阿里云大数据+AI技术沙龙上海站回顾 | ​揭秘TPC-DS 榜单第一名背后的强大引擎...
  8. linux 搭建 虚拟专用网络 (pptpd )
  9. 视频H5页面/视频app怎么做?
  10. scratch教程——弹球游戏