5_JumpOutArrary
Posted taxue505
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5_JumpOutArrary相关的知识,希望对你有一定的参考价值。
/*DP动态规划
一个数组,每个位置的数字代表当前位置可以向前走的步长,判断该数组能否跳出数组之外
case1 :[1,3,1,1,1,2] true
// [1,4,4,4,5,5]
case2 :[1,2,1,1,0,2] false
case3 :[1,3,1,3,0,2] true
*/
#include<iostream>
using namespace std;
bool JumpOutArray(int array[] ,int len)
int state[len]=0;
state[0]=array[0];
for(int i=1;i<len;i++)
state[i] = max(i+array[i],state[i-1]);
if(state[i]<=i)
return false;
return true;
int main()
int arr[6]=1,3,1,1,1,2;
//state 1 4 4 5 5 7
int arr1[6]=1,2,1,1,0,2;
//state 1 3 3 4 4
int arr2[6]=1,3,1,3,0,2;
//state 1 4 4 6
cout<<JumpOutArray(arr,6)<<endl;
cout<<JumpOutArray(arr1,6)<<endl;
cout<<JumpOutArray(arr2,6)<<endl;
//g++ JumpOutArray.cc -o JumpOutArray
//./JumpOutArray
以上是关于5_JumpOutArrary的主要内容,如果未能解决你的问题,请参考以下文章