• 跳跃游戏


    跳跃游戏

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

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

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

    例如:

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

    return true.

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

    return false.

    格式:

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

    样例1

    输入:

    5
    2 0 2 0 1

    输出:

    true
    #include <cstdio>
    #define N 110000
    int peo[N];
    int main()
    {
        int n; 
        while(scanf("%d", &n) != EOF)
        {
            
            int   v[N]={0}, maxlegth[N]={0};
            for(int i=0; i< n; i++)
            {    
                scanf("%d", &peo[i]);
                if(!peo[i]) {v[i]=1; continue; }
                maxlegth[i]= peo[i]+i;
            }
            int end, sb=0;
            if(peo[n-1]==0) 
                n -= 1;
            for(int i=0; i<n; i++)
            {
                bool flag=0;
                if(v[i])
                {
                    end=i;        
                    for(int j=0; j< end; j++)
                    {
                        if(maxlegth[j] >i)
                        {
                            flag =1;    
                        }    
                    }
                    if(flag)
                    {
                        continue;
                    }
                    else
                    {
                        printf("false
    ");
                        sb=1;
                        break;     
                    }
                }
            }
            if(!sb) printf("true
    ");
        }
        return 0;
    }
  • 相关阅读:
    12月11日
    081212 晴
    12月10日
    树莓派项目——基于树莓派的WIFI网络互传系统设计
    IDE
    边缘检测
    Android Launcher桌面应用快捷方式的开发
    android ui事件处理分析
    listview 分析
    ApplicationsIntentReceiver.class
  • 原文地址:https://www.cnblogs.com/soTired/p/5432926.html
Copyright © 2020-2023  润新知