魔力台阶


【华为校园招聘软件】2022-03-30


【编程题目 | 100分】魔力台阶 [ 2022 校园招聘 考试题 ]


编程题 第1/3题


1、魔力台阶 100分

科科最近在修炼魔法,一日他来到魔法城堡,城堡里有一个长长的台阶,而台阶的最终点便是魔法奥秘。

这是一个魔力台阶,每个台阶都有一个魔力值,魔力值代表下一步科科最大可以跨越的台阶数。

科科当前处在第1级台阶上,但是科科的体力有限,最多只能跨越K次。科科现在拜托你帮他计算下他能否拿到魔法奥秘。

如果能够拿到返回最少跨越的次数,拿不到则返回-1

解答要求

时间限制:C/C++ 1000ms,其他语言:2000ms

内存限制:C/C++ 256MB,其他语言:512MB

输入

台阶长度n (1<=n<=10^5)

台阶魔力值,[M1, M2….. Mn]由一个长度为n的数组表示,代表1~n级台阶的魔力值。(0<=Mi<=10^5)

最大的跨越次数K(1<=k<=10^5)

输出

输出一个整数,拿到魔法奥秘最少需要跨越的次数,如果拿不到,返回-1


代码实现


CPP


#include <bits/stdc++.h>

using namespace std;
// we have defined the necessary header files here for this problem.
// If additional header files are needed in your program, please import here.
int ans = -1;
int maxDist;

剩余50%内容,订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看