class Solution { public: bool canJump(vector<int>& nums) { int current = nums.size() - 1; for(int jump = nums.size() - 1; jump >= 0 ; --jump) { int distance = jump + nums[jump]; if (distance >= current) current = jump; } return (!current) ? true : false; } };