Question
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
Solution
-
递推式子 f(n) = f(n - 1) + f(n - 2)
-
解法类似于斐波那契
Code
class Solution {
public:
int jumpFloor(int number) {
if (number == 1)
return 1;
if (number == 0)
return 0;
if (number == 2)
return 2;
int one = 1;
int two = 2;
int sum = 0;
for (int i = 3; i <= number; i++) {
sum = one + two;
one = two;
two = sum;
}
return sum;
}
};