http://blog.youkuaiyun.com/linhuanmars/article/details/21356187
class Solution {
public:
int jump(int A[], int n) {
int step = 0;
int lastReach = 0;
int reach = 0;
for(int i = 0; i < n && i <= reach; i++){
if(i > lastReach) {
step++;
lastReach = reach;
}
reach = max(reach, i + A[i]);
}
return step;
}
};