华为OD机试真题-求幸存数之和-2023年OD统一考试(C卷)

2023-12-14 22:24:08

题目描述:

给一个正整数列 nums,一个跳数 jump,及幸存数量 left。运算过程为:从索引为0的位置开始向后跳,中间跳过 J 个数字,命中索引为J+1的数字,该数被敲出,并从该点起跳,以此类推,直到幸存left个数为止。然后返回幸存数之和。

约束:?

1)0是第一个起跳点。

2)起跳点和命中点之间间隔 jump 个数字,已被敲出的数字不计入在内。?

3)跳到末尾时无缝从头开始(循环查找),并可以多次循环。?

4)若起始时 left>len(nums) 则无需跳数处理过程。?

/**?

* nums: 正整数数列,长度范围 [1,10000]?

* jump: 跳数,范围 [1,10000]

* left: 幸存数量,范围 [0,10000]?

* return: 幸存数之和?
*/

int sumOfLeft(int[] nums,int jump,int left)

示例?

示例1

输入:[1,2,3,4,5,6,7,8,9],4,3

输出:13

说明:从1(索引为0)开始起跳,中间跳过 4 个数字,因此依次删除 6,2,8,5,4,7 。 剩余 1,3,9,返回和为13

文章来源:https://blog.csdn.net/2301_76848549/article/details/134906178
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。