最简单的动态规划
class Solution {
public:
int jumpFloor(int number) {
int dp[number + 1];
dp[1] = 1;
dp[0] = 1;
for(int i = 2; i <= number; i++)
dp[i] = dp[i - 1] + dp[i - 2];
return dp[number];
}
};优化一下,只用三个变量
class Solution {
public:
int jumpFloor(int number) {
if(number == 0 || number == 1) return number;
int a = 1, b = 1, c;
for(int i = 2; i <= number; i++)
{
c = a + b;
a = b;
b = c;
}
return c;
}
};


京公网安备 11010502036488号