45.跳跃游戏 II
class Solution {
public:
int jump(vector<int>& nums) {
int res = 1;
int predist = nums[0];
int maxdist = predist;
int i = 0;
if(nums.size()==1)return 0;
if (maxdist>=nums.size()-1) return 1;
while (i <= maxdist) {
int nextdist = i+nums[i];
maxdist=max(maxdist,nextdist);
if (maxdist>=nums.size()-1) break;
if (i == predist) {
res ++ ;
predist = maxdist;
}
i ++ ;
}
return res + 1;
}
};