給定乙個非負整數陣列,假定你的初始位置為陣列第乙個下標。
陣列中的每個元素代表你在那個位置能夠跳躍的最大長度。
請確認你是否能夠跳躍到陣列的最後乙個下標。
例如: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] 不能跳躍到最後乙個下標,輸出false
。
第一行輸入乙個正整數 n(1 \leq n \leq 500)n(
1≤n≤
500)
,接下來的一行 n
n 個整數,輸入陣列 a_ia
i。
如果能跳到最後乙個下標,輸出true
,否則輸出false
。
樣例輸入
52 0 2 0 1
樣例輸出
true
#include
using namespace std;
int main()
;b[0]=1;//b[i]=1表示能夠訪問到
for(int i=0;i>a[i];
for(int i=0;iif(b[i]==1)//如果能訪問到b[i]則將它後面a[i]個數全標為1 }}
if(b[n-1]==1) cout<<"true"<
動態規劃之跳躍遊戲
跳躍遊戲 給出乙個非負整數陣列,你最初定位在陣列的第乙個位置,陣列中的每個元素代表你在那個位置可以跳躍的最大長度,判斷你是否能到達陣列的最後乙個位置。注意事項 陣列a的長度不超過5000,每個元素的大小不超過5000 樣例 1 輸入 2,3,1,1,4 輸出 true 樣例 2 輸入 3,2,1,0...
遞迴與動態規劃 跳躍遊戲
題目 給定陣列arr,arr i k代表可以從位置i向右跳1 k個距離。比如,arr 2 3,代表從位置2可以跳到位置3 位置4或者位置5。如果從位置0出發,返回最少跳幾次能跳到arr最後的位置上。舉例 arr 3,2,3,1,1,4 arr 0 3,選擇跳到位置2 arr 2 3,可以跳到最後的位...
跳躍遊戲(貪心和動態規劃)
給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後乙個位置。示例 1 輸入 2,3,1,1,4 輸出 true 解釋 我們可以先跳 1 步,從位置 0 到達 位置 1,然後再從位置 1 跳 3 步到達最後乙個位置。示例 2 輸入...