描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
代码
当有1级台阶的时候,由题意可知,只有一种方法。2级台阶的时候,一种是跳两次,每次上一级,另一种是跳一次,上两级。3级台阶的时候,跳法一共应该有f(1)+f(2)种。依次类推,n级台阶就有f(n-1)+f(n-2)种。
public class Solution {
public int JumpFloor(
int n) {
if(n==
1){
return 1;
}
if(n==
2){
return 2;
}
int[] a=
new int[n];
a[
0]=
1;a[
1]=
2;
for(
int i=
2;i<n;i++){
a[i]=a[i-
1]+a[i-
2];
}
return a[n-
1];
}
}