计蒜客-----跳跃游戏(C语言)
2024-08-28 21:26:24
/********************************************************
给定一个非负整数数组,假定你的初始位置为数组第一个下标。
数组中的每个元素代表你在那个位置能够跳跃的最大长度。
请确认你是否能够跳跃到数组的最后一个下标。
例如:
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。
*********************************************************/
给定一个非负整数数组,假定你的初始位置为数组第一个下标。
数组中的每个元素代表你在那个位置能够跳跃的最大长度。
请确认你是否能够跳跃到数组的最后一个下标。
例如:
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。
*********************************************************/
/*********************************************************
思路:假定数组元素A[i]=k;则意味着从数组下表i可到达i+1,i+2,
。。。。。i+k;
我们定义max为从i位置调最大的长度达到的位置,将i+A[i];
如果从第一个位置A[0]开始,将能达到的位置都跳最大的长度,若
下一步跳出的最大长度达到的位置大于上一步,则将最大位置更新
。如此推算,当最大位置大于数组最后一个元素的下标,说明可以
到返回true;否则返回false。
************************************************************/
思路:假定数组元素A[i]=k;则意味着从数组下表i可到达i+1,i+2,
。。。。。i+k;
我们定义max为从i位置调最大的长度达到的位置,将i+A[i];
如果从第一个位置A[0]开始,将能达到的位置都跳最大的长度,若
下一步跳出的最大长度达到的位置大于上一步,则将最大位置更新
。如此推算,当最大位置大于数组最后一个元素的下标,说明可以
到返回true;否则返回false。
************************************************************/
#include<stdio.h>
int main()
{
int A[500];
int i,n;
int ptr;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&A[i]);
int max=A[0];
for(ptr=0;ptr<=max;ptr++)
if(A[ptr]+ptr>max)
max=A[ptr]+ptr;
if(ptr>n-1)
printf("true\n");
else
printf("false\n");
return 0;
}
int main()
{
int A[500];
int i,n;
int ptr;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&A[i]);
int max=A[0];
for(ptr=0;ptr<=max;ptr++)
if(A[ptr]+ptr>max)
max=A[ptr]+ptr;
if(ptr>n-1)
printf("true\n");
else
printf("false\n");
return 0;
}
最新文章
- sqlite3 not found问题解决方法
- Android复习笔记--Intent
- 用Prime31实现Google Play In-App-Blling
- CodeForces 625B 字符串模拟+思维
- 扫雷游戏制作过程(C#描述):第四节、菜单操作
- ES 04 - 安装Kibana插件(6.6.0版本)
- MAGENTO for XAMPP install config -搬家配置与安装配置
- python中重要的模块--asyncio 转载
- JS膏集02
- spring aop无法拦截类内部的方法调用
- mvc:view-controller标签使用
- 微信公众号 几种移动端UI框架介绍
- Chap7:民间用语[《区块链中文词典》维京&;甲子]
- Spring 中面向AOP之一系列做法
- Python中为什么要使用self?
- [leetcode]Construct Binary Tree from Inorder and Postorder Traversal @ Python
- Django 自带密码加密,自定密码加密方式 及自定义验证方式
- Struts2中带参数的结果集
- 在windows下解压缩rar文件
- HNOI2012永无乡
热门文章
- 【LaTeX】E喵的LaTeX新手入门教程(3)
- scrum 第二次冲刺
- selenium+python自动化登录脚本
- ubuntu14.04下搜狗拼音输入法不正常的解决方法
- 【luogu P1137 旅行计划】 题解
- 学大伟业 Day 4 培训总结
- Android学习笔记_58_清除手机应用程序缓存
- Android学习笔记_23_服务Service之AIDL和远程服务实现进程通信以及进程间传递自定义类型参数
- o&#39;Reill的SVG精髓(第二版)学习笔记——第五章
- js使用hover事件做一个“个人中心”的浮动层