算法创作 | “花式”爬楼梯

问题描述假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入:2输出:2解释:有两种方法可以爬到楼顶。1.  1 阶 + 1 阶2.  2 阶示例 2:输入:3输出:3解释:有三种方法可以爬到楼顶。1.  1 阶 + 1 阶 + 1 阶2.  1 阶 + 2 阶3.  2 阶 + 1 阶解决方法这是力扣题库中较简单的一题,首先定义一个函数climbStairs()据题意知,当楼梯阶数为1只有1种,为2时只有2种,则单独设一种情况。再分析3阶及以上的,初始化爬到n楼的方法,台阶每次是可以爬一个或两个,注意for循环时从3楼开始算,t=a+b,再推导下一层,最后返回t,def climbStairs(n):if n==1 or n==2:return na,b,t=1,2,0#爬1楼1种,2楼2种for i in range(3,n+1):#从3楼开始算t=a+ba=b#推导下一层b=treturn tprint(climbStairs(2))print(climbStairs(7))这个是偏数学解法, 假设我们现在站在台阶i上面。对于我们如何到达的i,有且仅有两种可能:我们之前在台阶i-1上面,然后用一步走到了台阶i上面;我们之前在台阶i-2上面,然后用两步走到了台阶i上面。设函数f(i)为到达i的所有可能的方法数量。则有f(i) = f(i-1) + f(i-2)即到达i的方法数等于到达i-1的方法数加上到达i-2的方法数。def climbStairs(n):f=[1,2]for i in range(2,n):f.append(f[i-1]+f[i-2])return f[n-1]print(climbStairs(2))print(climbStairs(7))运行结果:

结语对爬楼梯提出了两种算法,不同的思路。游戏式的爬楼梯,会在不知不觉中到达。实习编辑:李欣容稿件来源:深度学习与文旅应用实验室(DLETA)

(0)

相关推荐

  • 你是何时感受到这再平凡不过的爱‖文/浅忆

    你是何时感受到这再平凡不过的爱 1. 我第一次感受到有人在用生命守护我,是在10几岁的时候. 依稀记得,那是一个温和晴朗的中午,妈妈让我上楼拿蒸馒头用的东西,我拿的好像不是妈妈想要的那种.她当时正有些 ...

  • 梦想成真||~21~巨人国和免费“电梯”

    梦见毕业了,被分配到一个对口的科研所工作. 上班的第一天,就发现我仿佛置身巨人国里,同事们一个个都比肩姚明,而我的身高只到他们的腰部.不知道为什么,梦里的我好像并不觉得奇怪,只是忐忑不安的接触新环境. ...

  • 程序员必学算法「动态规划」:爬楼梯(完全背包解法)

    原创代码随想录2021-02-02 08:35:00 通知:我将公众号文章和学习相关的资料整理到了Github :https://github.com/youngyangyang04/leetcode ...

  • 骨科名医:爬楼梯或爬山是「最笨的运动」,损伤膝盖,得不偿失!

    膝盖的寿命很有限,不要等到膝盖退化再去后悔! 许多人会利用爬楼梯消耗热量,饭后爬楼梯不仅可以增强心肺,还能加速新陈代谢.增强肌力,最重要的是不论天气好坏,只要你在室内,随时都可以练习,而且同时间内,爬 ...

  • 算法创作|神奇语言问题解决方法

    问题描述一位同学正在学习一门神奇的语言,其中的单词都是由小写英文字母组成,有些单词很长,而这位同学一直记不住,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现的最多来分辨单词,现在请帮助这位同学 ...

  • 10套带电梯的农村别墅,颜值一套比一套高,老人再也不用爬楼梯了

    现在农村发展的越来越好,建房当然也要与时俱进.不但外观要大气时尚高颜值,室内布局也要舒适合理,满足实际需求.为了让家中老人省去爬楼梯的苦恼,建房的时候很多朋友会选择建一个电梯.今天就给大家推荐10套带 ...

  • 算法创作|规则数列计算解决方法

    问题描述如下图所示,小明用从 1 开始的正整数"蛇形"填充无限大的矩阵.1 2 6 7 15 -3 5 8 14 -4 9 13 -10 12 -11 --(1)容易看出矩阵第二行 ...

  • 算法创作|阶梯电价问题解决方法

    问题描述为了提倡居民节约用电,某省电力公司执行"阶梯电价",安装一户一表的居民用户电价分为两个"阶梯":月用电量50千瓦时(含50千瓦时)以内的,电价为0.53 ...

  • 最简单的动作,比爬楼梯还简单,1分钟就能通经络,排毒素!

    小编本着负责任的态度告诉大家! 体重偏高,体型较肥胖的身材不仅会降低你的颜值 各种疾病找上你的几率也非常大! 比如三高.心脑血管疾病的患病几率都会有较高的趋势 那么今天就为大家介绍8个减脂瑜伽体式, ...

  • 算法创作 | 0到n-1中缺失的数字问题解决方法

    问题描述一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0-n-1之内.在范围0-n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字.示例1:输入:[0,1,3 ...

  • 算法创作|找出游戏的获胜者问题解决方法

    问题描述共有 n 名小伙伴一起做游戏.小伙伴们围成一圈,按 顺时针顺序 从 1 到 n 编号.确切地说,从第 i 名小伙伴顺时针移动一位会到达第 (i+1) 名小伙伴的位置,其中 1 <= i ...