一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
分析思路:
当台阶为1级时,f(1)=1;
当台阶为2级时,f(2)=1+1=2;
当台阶为3级时,f(3)=f(1)+f(2)+1=4;
当台阶为4级时,f(4)=f(1)+f(2)+f(3)+1=8;
当台阶为5级时,f(5)=f(1)+f(2)+f(3)+f(4)+1=16;
......
因此,当台阶为n级时,f(n)=2^(n-1)。
public class Solution {
public int JumpFloorII(int target) {
if (target==0)
return 0;
int result=1;
for(int i=1;i<target;i++)
{
result=2*result;
}
return result;
}
}