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值。
欢迎指正交流!!!

京公网安备 11010502036488号