9 变态跳台阶

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
 
follow up问题要思考前面解决问题的方法,这题就是用数学方法统计出结果的例子。
f(n) = f(n - 1) + f(n - 2) + f(n - 3) + ... + f(1);
f(n - 1) =           f(n - 2) + f(n - 3) + ... + f(1);
=> f(n) = 2f(n - 1) ;
 
func jumpFloorII( number int ) int {
    // write code here
    if number <= 0 {
        return 0
    }

    if number == 1 {
        return 1
    }

    res := 1
    for i := 2; i <= number;i++ {
        res *= 2
    }

    return res
}

  

posted @ 2021-04-07 22:16  zqlucky  阅读(43)  评论(0编辑  收藏  举报