美文网首页剑指offer
剑指offer 变态跳台阶

剑指offer 变态跳台阶

作者: 云胡同学 | 来源:发表于2017-11-25 23:59 被阅读0次

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

思路

用f(n)表示n级台阶的总共跳法。

第一次:

跳1级,剩下n-1级未跳,剩下的跳法是f(n-1)

跳2级,剩下n-2级未跳,剩下的跳法是f(n-2)

跳n-1级, 剩下1级未跳,剩下的跳法是f(1)

由此可以推出f(n) = f(n-1) + f(n-2) + ...... + f(1)

也可以推出f(n-1) = f(n-2) + f(n-3) + ...... + f(1)

f(n) = 2 * f(n-1)

因此我们也可以推出

f(n-1) = 2 * f(n-2)

f(n-2) = 2 * f(n-3)

......

f(2) = 2 * f(1)

因此最后结果是

f(n) = 2n-1

代码

class Solution {
public:
    int jumpFloorII(int n) {
        return 1<<(n-1);
    }
};

相关文章

  • [剑指offer] 变态跳台阶

    本文首发于我的个人博客:尾尾部落 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该...

  • 变态跳台阶 剑指offer

    题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳...

  • 剑指offer 变态跳台阶

    题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种...

  • [剑指Offer]变态跳台阶

    本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03...

  • 剑指offer 动态规划 斐波拉契数列 跳台阶 变态跳台阶 矩阵

    剑指offer 动态规划 Python and C++ 1、斐波拉契数列2、跳台阶3、变态跳台阶4、矩阵覆盖 斐波...

  • 剑指offer(九)变态跳台阶

    写在前面: 为了增长一下自己的数据结构能力,也为了面试准备,准备将剑指Offer做一下,并与各位分享,希望各位可以...

  • 【python】剑指offer,变态跳台阶?

    题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法...

  • [剑指offer][Java]变态跳台阶

    题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法...

  • 剑指Offer--变态跳台阶

    一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 经...

  • 剑指 offer:9、变态跳台阶

    9. 变态跳台阶 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级...

网友评论

    本文标题:剑指offer 变态跳台阶

    本文链接:https://www.haomeiwen.com/subject/tuphbxtx.html