1. 程式人生 > >Lintcode 跳躍遊戲

Lintcode 跳躍遊戲

給出一個非負整數陣列,你最初定位在陣列的第一個位置。   

陣列中的每個元素代表你在那個位置可以跳躍的最大長度。    

判斷你是否能到達陣列的最後一個位置。

樣例
A = [2,3,1,1,4],返回 true.

A = [3,2,1,0,4],返回 false.

分析:遍歷一遍,記錄可走的點可以達到的最遠點

牛人演算法!!!!

class Solution {  
public:  
    /** 
     * @param A: A list of integers 
     * @return: The boolean answer 
     */  
    bool
canJump(vector<int> A) { // write you code here int maxN = 0; int i = 0; while(i<=maxN) { maxN = max(maxN,i+A[i]); i++; if(maxN>=A.size()-1) return true; } return
false; } };