您的位置:首页 > 其它

计蒜客 难题题库 018 跳跃游戏

2015-08-09 21:52 246 查看
3398次
13.6%
1000ms
65536K

给定一个非负整数数组,假定你的初始位置为数组第一个下标。
数组中的每个元素代表你在那个位置能够跳跃的最大长度。
请确认你是否能够跳跃到数组的最后一个下标。
例如:
A = [2,3,1,1,4],
return true.
A = [3,2,1,0,4],
return false.
格式:
第一行输入一个正整数n,接下来的一行,输入数组A
。如果能跳到最后一个下标,输出“true”,否则输出“false”

样例1

输入:
5
2 0 2 0 1


输出:
true


#include<iostream>
using namespace std;

int main(){
int n, max_index = 0, a;
cin >> n;
for(int i = 0; i <= max_index && i < n; ++i){
cin >> a;
max_index = max(max_index, a + i);
if(max_index >= n - 1){
cout << "true" << endl;
return 0;
}
}
cout << "false" << endl;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: