通过率 100% · 提交 2 · 通过 2
山路一共设有 n 个关卡,按 1 ~ n 顺序排列。当前位于 1 号关卡,必须按照关卡从小到大闯关,且必须到达最后第 n 号关卡才算寻宝成功。每个关卡都有对应的宝藏分值(可能为负数),经过当前关卡即可获得该关卡分值,分数持续累加。 移动规则: 从当前关卡,下一次只能在前方 1 关或者 2 关处打卡; 限制规则:不能连续两次都一次性跳 2 关,违反该规则的路线无效; 请求出:所有合法路线中,能够收集到的最大累加总分。
这类题属于算法机考高频题型中「100分 / 华为OD」方向的高频题型,通常考察对「100分 / 华为OD」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
参数1:整数 n,代表关卡数量 参数2:整数数组,依次表示第 1 ~ n 关的宝藏分值 1 <= n <= 20 每关分值:-999 <= val <= 999
输出一个整数,代表合法路线的最大累加得分。
示例 1
输入示例
5 10 5 8 3 15
输出示例
41
合法路线示例:1 → 2 → 3 → 4 → 5,无连续跳两关,总分:10 + 5 + 8 + 3 + 15 = 41 路线 1 → 3 → 5 连续两次跳 2 关,违规,不计入统计。
示例 2
输入示例
4 10 1 1 100
输出示例
112
路线 1 → 2 → 3 → 4 (1, 1, 1): 10 + 1 + 1 + 100 = 112 路线 1 → 3 → 4 (2, 1): 10 + 1 + 100 = 111 路线 1 → 2 → 4 (1, 2): 10 + 1 + 100 = 111 最大值 112。
时间限制 1000 ms · 内存限制 256 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。