• 计蒜客 跳跃游戏


    跳跃游戏

    给定一个非负整数数组,假定你的初始位置为数组第一个下标。

    数组中的每个元素代表你在那个位置能够跳跃的最大长度。

    请确认你是否能够跳跃到数组的最后一个下标。

    例如:

    A = [2,3,1,1,4],

    return true.

    A = [3,2,1,0,4],

    return false.

    格式:

    第一行输入一个正整数n,接下来的一行,输入数组A[n]。如果能跳到最后一个下标,输出“true”,否则输出“false”

    样例输入

    5
    2 0 2 0 1

    样例输出

    true

     1 #include"iostream"
     2 #define MAX 10000
     3 using namespace std;
     4 
     5 int jump(int n, int *a, int p)
     6 {
     7     if (p >= n)
     8         return 1;
     9     for (int i = a[p]; i>0; i--)
    10     {
    11         if (jump(n, a, p + i) == 1)
    12             return 1;
    13         else
    14             a[p + i] = -1; //p+1位置到不了最后
    15     }
    16     return 0;
    17 }
    18 
    19 int main()
    20 {
    21     int a[MAX];
    22     int n,tag;
    23     tag = 0;
    24     cin >> n;
    25     for (int i = 0; i<n; i++)
    26     {
    27         cin >> a[i];
    28     }
    29 
    30     if (jump(n,a,0))
    31         cout << "true";
    32     else
    33         cout << "false";
    34 
    35 }
  • 相关阅读:
    面向对象
    PIL库学习及运用
    Jieba库使用和好玩的词云
    Python汉诺塔问题
    用python计算圆周率PI
    使用python画一只佩奇
    面向对象与正则表达式的学习
    美白,磨皮,搞笑图片处理
    tuetle制作汉诺塔
    python圆周率的计算及进度条提示
  • 原文地址:https://www.cnblogs.com/SeekHit/p/5552616.html
Copyright © 2020-2023  润新知