public class Solution {
    public boolean canJump(int[] A) {
        if (A == null)
            return false;
        int len = A.length;
        if (len == 0)
            return false;
        if (len == 1)
            return true;
        int gap = 1;
        boolean res = false;
        for (int i = len - 2; i >= 0; i--) {
            if (A[i] >= gap) {
                gap = 1;
                res = true;
            } else {
                gap++;
                res = false;
            }
        }
        return res;
    }
}