• 计蒜客:跳跃游戏


    https://nanti.jisuanke.com/t/18

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

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

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

    例如:A=[2,3,1,1,4]A = [2,3,1,1,4]A=[2,3,1,1,4] 能够跳跃到最后一个下标,输出true

    A=[3,2,1,0,4]A = [3,2,1,0,4]A=[3,2,1,0,4] 不能跳跃到最后一个下标,输出false

    输入格式

    第一行输入一个正整数 n(1≤n≤500)n(1 leq n leq 500)n(1≤n≤500),接下来的一行 nnn 个整数,输入数组 AiA_iAi​。

    输出格式

    如果能跳到最后一个下标,输出true,否则输出false

    样例输入

    5
    2 0 2 0 1

    样例输出

    true

    贪心问题,因为只要跳到最后一格即可,所以只要从最后一格开始。

    从第一格跳到最后一格和从最后一格跳到第一格是相同的。

    如果从一个格子可以跳到最早出现的可以直接跳到最后一格的后面,

    那就可以先直接跳到这个格子,再到终点,

    如果不能达到,这个格子已经是最近的了,肯定不能跳到最后。

    找一个最早出现的可以直接跳到最后一格的,

    把这一格变成最后一格,

    重复是上面的过程,如果最后一格变为0,就为true,否则为false。

    #include<stdio.h>
    #define N 1020
    int a[N];
    int main()
    {
        int n,i;
        while(scanf("%d",&n)!=EOF)
        {
            for(i=0;i<n;i++)
                scanf("%d",&a[i]);
            n--; 
            for(i=0;i<n;i++)
            {
                if(a[i]>=n-i)
                {
                    n=i;
                    i=-1;
                }
            }
            if(n!=0)
                printf("false
    ");
            else 
                printf("true
    ");
        }
        return 0;
    }
    

    跳跃游戏二

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

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

    你的目标是到达最后一个下标,并且使用最少的跳跃次数。

    例如:

    A=[2,3,1,1,4]A = [2,3,1,1,4]A=[2,3,1,1,4],到达最后一个下标的最少跳跃次数为 222。(先跳跃 111 步,从下标 000 到 111,然后跳跃 333 步,到达最后一个下标。一共两次)

    输入格式

    第一行输入一个正整数 n(1≤n≤100)n(1 le n le 100)n(1≤n≤100) ,接下来的一行,输入 nnn 个整数,表示数组 AAA。

    输出格式

    最后输出最少的跳跃次数。

    样例输入

    5
    3 1 1 1 1

    样例输出

    2
    #include<stdio.h>
    #define N 120
    int a[N];
    int main()
    {
    	int n,i,ans;
    	scanf("%d",&n);
    	for(i=0;i<n;i++)
    		scanf("%d",&a[i]);
    	ans=0;
    	n--;
    	for(i=0;i<n;i++)
    	{
    		if(a[i]>=n-i)
    		{
    			n=i;
    			i=-1;
    			ans++;
    		}
    	}
    	printf("%d
    ",ans);
    	return 0;
    } 
  • 相关阅读:
    WPF--常用布局介绍
    NUGET常用命令
    WPF 3D变换应用
    WPF MeshGeometry3D
    一组西门子S7 报文
    西门子与三菱PLC报文比较
    西门子S7报文解析
    C#与西门子PLC通讯
    Django之model admin自定义后台管理
    django ajax
  • 原文地址:https://www.cnblogs.com/zyq1758043090/p/10002937.html
Copyright © 2020-2023  润新知