zoukankan      html  css  js  c++  java
  • 计蒜客 跳跃游戏

    跳跃游戏

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

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

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

    例如:

    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 }
  • 相关阅读:
    PatentTips
    PatentTips
    PatentTips
    Xvisor ARM32 启动分析
    PatentTips
    PatentTips
    PatentTips
    PatentTips
    PatentTips
    PatentTips
  • 原文地址:https://www.cnblogs.com/SeekHit/p/5552616.html
Copyright © 2011-2022 走看看