当前位置: 首页 > news >正文

北京网站建设交易阿贝云服务器

北京网站建设交易,阿贝云服务器,宜州做网站,做计算机网站有哪些功能目录 题目部分 解读与分析 代码实现 题目部分 题目找终点难度易题目说明给定一个正整数数组#xff0c;设为nums#xff0c;最大为100个成员#xff0c;求从第一个成员开始#xff0c;正好走到数组最后一个成员#xff0c;所使用的最少步骤数。 要求#xff1a; 1.第…目录 题目部分 解读与分析 代码实现 题目部分 题目找终点难度易题目说明给定一个正整数数组设为nums最大为100个成员求从第一个成员开始正好走到数组最后一个成员所使用的最少步骤数。 要求 1.第一步必须从第一元素开始且 1 第一步的步长 len/2 (说明len为数组的长度需要自行解析。) 2.从第二步开始只能以所在成员的数字走相应的步数不能多也不能少,如果目标不可达返回-1只输出最少的步骤数量。 3.只能向数组的尾部走不能往回走。输入描述由正整数组成的数组以空格分隔数组长度小于100请自行解析数据数量。输出描述正整数表示最少的步数如果不存在输出-1。补充说明补充说明------------------------------------------------------示例示例1输入7 5 9 4 2 6 8 3 5 4 3 9输出2说明第一步第一个选择步长 2从第一个成员开始走 2 步到达 9 第二步从 9 开始经过自身数字 9 对应的 9 个成员到最后。 示例2输入1 2 3 7 1 5 9 3 2 1输出-1说明无 解读与分析 题目解读 整形数组的长度为 len第一步的大小可以是 [1, len/2) 中的任意一个数字第二步和第二步以后的步数只能为当前成员的数字。 分析与思路 题目中第一步是可选的数字一旦第一步数字固定了后面的所有步数都是固定的。所以此题可变的是第一步的步数我们可以尝试第一步所有的可能的步数计算所有能到达最后的步数输出这些步数中的最小值即可。如果第一步尝试了所有可能的步数全都无法达到最后一步则输出 -1。 以上方法的时间复杂度为O()。 代码实现 Java代码 import java.util.Scanner;/*** 篮球比赛* since 2023.10.08* version 0.1* author Frank**/ public class FindEnd {public static void main(String[] args) {Scanner sc new Scanner(System.in);while (sc.hasNext()) {String input sc.nextLine();String[] numbersStr input.split( );processFindEnd( numbersStr );}}private static void processFindEnd( String numbersStr[] ){int count numbersStr.length;int[] numbers new int[count];for( int i 0; i count; i ){numbers[i] Integer.parseInt( numbersStr[i] );}int minSteps Integer.MAX_VALUE;for( int i 1; i count * 1.0 / 2; i ){int steps 1;int next i;while( next count -1 ){steps ;next next numbers[next];if( next count -1 ){if( steps minSteps ){minSteps steps;} break;}}}if( minSteps Integer.MAX_VALUE ){minSteps -1;}System.out.println( minSteps );}} JavaScript代码 const rl require(readline).createInterface({ input: process.stdin }); var iter rl[Symbol.asyncIterator](); const readline async () (await iter.next()).value; void async function() {while (line await readline()) {var numberArr line.split( );processFindEnd(numberArr);} }();function processFindEnd(numbersStr) {var count numbersStr.length;var numbers new Array();for (var i 0; i count; i) {numbers[i] parseInt(numbersStr[i]);}var minSteps Number.MAX_VALUE;for (var i 1; i count / 2; i) {var steps 1;var next i;while (next count - 1) {steps;next next numbers[next];if (next count - 1) {if (steps minSteps) {minSteps steps;}break;}}}if (minSteps Number.MAX_VALUE) {minSteps -1;}console.log(minSteps); } (完)
http://www.pierceye.com/news/463549/

相关文章:

  • 网站如何做实名验证码深圳企业网站推广
  • 傻瓜式大型网站开发工具餐饮业手机php网站
  • 网站建设小细节图片东阳网站建设yw126
  • 为什么找不到做网站的软件怎么做音乐mp3下载网站
  • 做一个网站需要什么网络营销方式分析论文
  • 可以做3d电影网站企业网站优化应该怎么做
  • 中山做网站联系电话app客户端开发公司
  • 秦皇岛网站推广价钱南京建设网站制作
  • 2018钓鱼网站建设邢台seo公司
  • 深圳建设交易中心网站域名网站建设
  • 做网站色弱可以吗一个网址多少钱
  • 如何查询网站接入信息产品营销网站
  • 常用博客建站程序遂溪网站开发公司
  • 网站开发软件系统安徽通皖建设工程有限公司网站
  • 意派网站开发新手篇做平面常用的网站
  • 广州网站设计费用深圳室内设计师网
  • 有什么可以做兼职的网站吗建设网站的需求分析
  • 专门做进口产品的网站6wordpress赚钱方法
  • 长兴网站建设公司郫县城乡规划建设管理局网站
  • 天津建设工程信息网站搜索引擎推广是什么工作
  • 网站的系统建设方式网站建设报价表格
  • 商城展示网站建设我劝大家不要学android
  • 官网的建站过程云南网站建设营销
  • 那个网站上有打码的任务做台州做网站的公司
  • 做公司网站 需要注意什么汕尾市住房和城建设局网站
  • 建立音乐网站网络媒体设计是什么
  • html网站怎么进入后台网站建设完成之后要索取哪些
  • 做炭化料的网站国外可以做非法网站吗
  • 厦门 网站建设 网站开发 未来网络做百科专用参考链接的网站
  • 手机网站友情链接怎么做网站轮播图