美文网首页
给定一个正整数数组,最大为100个成员,从第一个成员开始,走到数

给定一个正整数数组,最大为100个成员,从第一个成员开始,走到数

作者: 小仙有毒_1991 | 来源:发表于2020-07-08 08:28 被阅读0次

题目描述:
给定一个正整数数组,最大为100个成员,从第一个成员开始,走到数组最后一个成员的步骤数,第一步必须从第一个元素开始,1<=步长<len/2,第二步开始以所在成员的数组走相应的步数。如果目标不可达返回-1,只输出最少的步骤数量。

输入描述:
由正整数组成的数组,以空格分隔,数组长度小于100,请自行解析数据数量。

输出描述:
正整数,表示最少的步数,如果不存在输出-1.

示例:
输入:

7 5 9 4 2 6 8 3 5 4 3 9
输出:

2
—————————————

  var nums = [7,5, 9, 4, 2, 6, 8, 3, 5, 4, 3, 9];
  var min = -1;
  var result = [];


  for(var i= 1;i < Math.floor(nums.length/2);i++){
    var index = 0,//当前位置
      step  = 0,//步长
      total  = 0;//总共走的次数
    step = i;//
    index += step;
    total ++;
    check(index);
  }
  function check(index){
    if(index === nums.length - 1){
      result.push(total);
      if(min !== -1 ){
        if(min > total){
          min = total;
        }
      }else{
        min = total;
      }
    }else{
      if(index < nums.length - 1){
        step = nums[index];
        index += step;
        total ++;
        check(index);
      }else{
        return;
      }
    }
  }
  
  
  console.log('result',result);
  console.log('min',min);

相关文章

网友评论

      本文标题:给定一个正整数数组,最大为100个成员,从第一个成员开始,走到数

      本文链接:https://www.haomeiwen.com/subject/yjkqcktx.html