剑指Offer(牛客网) 变态跳台阶

链接:https://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387?tpId=13&tqId=11162&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
来源:牛客网

设 nn 级台阶有f(n) f(n) 种跳法,根据最后一次跳台阶的数目可以分解为最后一次一级,则前面需要跳n-1 n−1 级,有f(n-1) f(n−1) 种跳法;最后一次跳两级,则前面需要跳n- 2n−2 级,有f(n-2) f(n−2) 种跳法。以此类推 易知,

f(n)=f(n-1)+f(n-2)+…+f(1)
f(n-1)=f(n-2)+…f(1)
得:f(n)=2*f(n-1)
转化为数学问题。

public class Solution {
    public int JumpFloorII(int target) {
        //return (int)Math.pow(2,target-1);
        return target==0?0:1<<(target-1);
    }
}
发布了24 篇原创文章 · 获赞 2 · 访问量 367

猜你喜欢

转载自blog.csdn.net/Iloveyshsh/article/details/105475121