华为OD机试E卷 –跳格子3 –24年OD统一考试(Java & JS & Python & C & C++)

文章目录

  • 题目描述
  • 输入描述
  • 输出描述
  • 用例
  • 题目解析
  • JS算法源码
  • Java算法源码
  • python算法源码
  • c++算法源码
  • 题目描述

    小明和朋友们一起玩跳格子游戏,
    每个格子上有特定的分数 score = [1, -1, -6, 7, -17, 7],
    从起点score[0]开始,每次最大的步长为k,请你返回小明跳到终点 score[n-1] 时,能得到的最大得分。

    输入描述

    第一行输入总的格子数量 n
    第二行输入每个格子的分数 score[i]
    第三行输入最大跳的步长 k

    输出描述

    输出最大得分
    备注
    • 格子的总长度 n 和步长 k 的区间在 [1, 100000]
    • 每个格子的分数 score[i] 在 [-10000, 10000] 区间中

    用例

    输入

    6
    1 -1 -6 7 -17 7
    2

    输出

    14

    说明

    题目解析

    这个问题可以通过动态规划来解决。我们可以使用一个数组 dp 来记录到达每个格子时的最大得分。具体步骤如下:

    1. 初始化:创建一个大小为 n 的数组

    作者:飞码创造者

    物联沃分享整理
    物联沃-IOTWORD物联网 » 华为OD机试E卷 –跳格子3 –24年OD统一考试(Java & JS & Python & C & C++)

    发表回复