一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
思路:本质是f(n)=f(n-1)+...+f(0)+1;其中(n>=1);把数字写出来,很容易发现当n>=1时,f(n)=2^(n-1);
代码如下:
public class Solution {
public int JumpFloorII(int target) {
if(target == 0){
return 0;
}
return (int)Math.pow(2,target-1);
}
}