变态跳台阶,很难很难,终于想出来了,附推导过程,为自己鼓掌
https://www.nowcoder.net/practice/22243d016f6b47f2a6928b4313c85387?tpId=13&tqId=11162&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
推导过程:
因为之前有一道题目,是DP做的,所以我开始的思路也是DP,就是看跟n-1, n-2的关系,然后就发现跟1- n-1 都有关系;
然后就看能不能把f1 f2 f3 都累加,想到这里,感觉跟全排列、全组合、幂次有点关系;
然后就想到每个台阶,都可以作为一个判断点,就是类似树的分支,青蛙可以选择在这个台阶上落脚,也可以选择不落脚。
那么就会发现,答案的解法,是 2 * 2 * ... * 2,那么乘多少次呢?
因为最后一个台阶肯定要落脚的,所以答案就是 2 ^ (n-1) ,欧耶!
代码如下:
class Solution { public:int jumpFloorII(int number) {return pow(2, number-1);} };
变态跳台阶,很难很难,终于想出来了,附推导过程,为自己鼓掌相关推荐
- 7、斐波那契数列、跳台阶、变态跳台阶、矩形覆盖------------剑指offer系列
题目:斐波那契数列 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). f(n) = f(n-1) + f(n-2) 基本思路 这道题在剑指offe ...
- 算法练习day20——190411(重建二叉树、斐波那契数列、跳台阶、矩形覆盖、变态跳台阶、旋转数组的最小数字、矩阵中的路径)
1.重建二叉树 根据二叉树的前序遍历和中序遍历的结果,重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字. preorder = [3,9,20,15,7].inorder = [9 ...
- 《剑指offer》-- 斐波那契数列、跳台阶问题 、变态跳台阶问题、矩阵覆盖
一.斐波那契数列: 1.题目: 现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0).n<=39. 2.什么是斐波那契数列? 斐波那契数列指的是这样一个数列: 0, 1, ...
- 跳台阶问题 + 变态跳台阶问题 解法(动态规划递归 + 非递归)
一.跳台阶问题 题目描述: 一个台阶总共有n级,如果一次可以跳1级,也可以跳2级.求总共有多少总跳法,并分析算法的时间复杂度. 通过题目的描述,可以很清晰地看到,这就是一个Fibonacci数列. 递 ...
- python青蛙跳台阶_Python中跳台阶、变态跳台阶与矩形覆盖问题的解决方法
前言 跳台阶.变态跳台阶.矩形覆盖其实都和斐波那契数列是一类问题,文中通过示例代码介绍的非常详细,下面话不多说了,来一起看看详细的介绍吧. 跳台阶 问题描述: 一只青蛙一次可以跳上1级台阶,也可以跳上 ...
- 动态规划:青蛙跳台阶、变态跳台阶
青蛙跳台阶问题是一个简单的动态规划问题. 问题1:普通跳台阶 一只青蛙可以一次跳 1 级台阶或者一次跳 2 级台阶,例如: 跳上第 1 级台阶只有一种跳法:直接跳 1 级即可. 跳上第 2 级台阶有两 ...
- 递归和循环:跳台阶和变态跳台阶和矩形覆盖
题目描述 跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 变态跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级--它 ...
- 剑指offer九:变态跳台阶
一.题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 二.解题思路 可以延续上一题的思路,逆向思维来考虑这个问题.要想跳到第n级 ...
- 剑指Offer #09 变态跳台阶(数列推导)
题目来源:牛客网-剑指Offer专题 题目地址:变态跳台阶 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 题目解析 这道题有 ...
- java 简单跳台阶和变态跳台阶
1. 简单跳台阶 1.1 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 1.2 解题思路 对于本题,有题目描述可知, ...
最新文章
- Jquery创建JSON对象
- idea自动为行尾加分号
- desktop docker 无法卸载_docker,生信人的福音!
- Uboot USB模式(RK3288变砖头的解决办法)
- 条件注释判断兼容浏览器版本CSS HACK !--[if !IE]!--[if IE]!--[if lt IE 6]!--[if gte IE 6]...
- hive 如果表不存在则创建_Hive DDL
- JQuery Easyui/TopJUI表格基本的删除功能(删除当前行和多选删除)
- Python—爬取全国城市名称案例(Xpath方法)
- 【UVA No. 12676】转换哈夫曼编码 Inverting Huffman
- [Hadoop培训笔记]05-HDFS详细分析(二)
- GitHub上热门的Java开源项目
- 一个字符串截取函数c语言
- JAVA企业邮箱发送
- EBS中如何实现简单的日记账导入
- shell程序设计小知识
- window安装Linux
- 华为任正非:管理的灰度
- 开源免费的脑电/脑磁图数据分析软件汇总
- unity字体外发光_【Unity学习心得】Sprite外发光的制作
- SVG的国旗图标集合flag-icon-css在vue中的使用
热门文章
- 1亿组图文对,填补中文开源多模态数据集空白!还附带基础模型,来自华为诺亚方舟实验室...
- 芯片开发者46%年收入达30万元,7纳米制程以内开发者30%超50万元
- LSTM之父再称ResNet、GAN等五大网络都有他的功劳,网友却说:自负大于引用数
- 远程扫描iPhone相册?苹果的好心网友不领情
- 新模拟算法揭秘加州地震史:更准确有效
- 伪造GPS信号就能把无人车带沟里?百度Apollo工程师实验证明:自动驾驶没那么好骗...
- 2D图片3秒变立体,变换视角流畅自然:Adobe实习生的智能景深算法,登上顶级期刊...
- 中国AI又夺一冠!依图刷榜全球声纹识别挑战赛,刷新纪录,大比分夺魁
- 用人脑生成等概率随机数,困扰人类30万年的问题解决了 | 附“源代码”
- WePY框架开发的小程序如何在微信web开发者工具中运行起来