一、题目描述
一个正整数数组 设为nums,最大为100个成员,求从第一个成员开始正好走到数组最后一个成员所使用的最小步骤数。
要求:
- 第一步 必须从第一元素起 且 1<=第一步步长<len/2 (len为数组长度);
- 从第二步开始只能以所在成员的数字走相应的步数,不能多不能少, 如果目标不可达返回-1, 只输出最小的步骤数量;
- 只能向数组的尾部走不能向回走。
二、输入描述
有正整数数组空格分割,数组长度<100。
三、输出描述
正整数 最小步数,不存在输出-1。
四、测试用例
测试用例1:
1、输入
2 3 1 1 1
2、输出
2
3、说明
第一步步长为1,从索引0到索引1;第二步步长为3,从索引1到索引4。
测试用例2:
1、输入
1 2 3 4 5
2、输出
-1
3、说明
无论选择第一步步长为
这篇博客详细介绍了华为OD机试中的一道题目——求解从数组第一个成员到最后一个成员的最小步骤数,讨论了解题思路、输入输出描述,并给出了Java算法源码及效果展示。题目要求第一步步长在[1, len/2)范围内,后续步骤数等于当前位置的数组元素。"
127943411,2116373,LeetCode 1460: 通过翻转子数组使两个数组相等,"['算法', 'LeetCode', 'Python', '数组', '面试准备']
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



