class Solution {
public:
    int jumpFloorII(int number) {
        vector<int> res{1};
        int back = 0;
        int sum = 1;
        while(back != number-1){
            res.push_back(1 + sum);
            sum += res.back();
            ++back;
        }
        return res.back();
    }
};

第n个台阶的跳法可以为1、从平地一步跳上2、从之前所有台阶一步跳上,
数据结构用一个向量,sum变量用来保存当前向量的元素和,即为从之前所有台阶一步跳上的方法数,
更新完向量后再跟新sum值。
欢迎指正交流!!!