青蛙跳台阶(升级版)

一只青蛙一次可以跳上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;
    }
}

猜你喜欢

转载自blog.csdn.net/dreamsky8023/article/details/80078733