题目:
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法
。
思路:
当n=1时,青蛙只有一种跳法,f(n)=1;
当n=2时,青蛙有两种跳法,f(n)=2;
当n>=3时,青蛙第一次可以跳1阶,此时有f(n-1)种跳法;青蛙第一次跳了2阶,此时有f(n-2)种跳法。
代码:
class Solution {
public:
int jumpFloor(int number) {
if(number<3)
return number;
int first=1,second=2,target;
for(int i=0;i<number-2;i++){
target=first+second;
first=second;
second=target;
}
return target;
}
};