// LeetCode 55 跳跃游戏
// 贪心地每次走最远
class Solution {
public boolean canJump(int[] nums) {
int currentEnd = 0;
int currentFar = 0;
boolean res = false;
for (int i = 0;i < nums.length - 1; i ++){
currentFar = Math.max(currentFar, i + nums[i]); // 当前能走到最远
if (i == currentEnd){ // 此时已经到上一次能走到的最大距离
if (currentFar == currentEnd) return false; // 两者相等表示走不了了
currentEnd = currentFar;
}
}
return currentFar >= nums.length - 1;
}
}