首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

台阶问题

题目: 给定一个有N个台阶的楼梯,一个人从下到上开始跳台阶,这个人有两种的方式:一次一个台阶,一次两个台阶; 问:从台阶底端跳到台阶顶端,有多少种跳台阶的方式?...如果只有1个台阶,那么显然只有一种法;如果 是2级台阶,那么有2种法。...对于一个有n级台阶的楼梯来说,我们设法为 f(n) ,假如我们先跳1个台阶,则剩下有 n-1 个台阶法为 f(n-1) 次,假如我们先跳2个台阶,则剩下 n-2 阶,法为 f(n-2);由此可以推出...比如说 每次可以3个台阶;按照同样的方法分析,如下公式: ?...解题代码如下: [cpp] view plaincopy /** 题目描述: 有N个台阶,一个人从台阶下向上跳台阶,有两种的选择 1次一个台阶,1次两个台阶 这两种选择;

62790
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    青蛙跳台阶问题

    文字表述 首先,当只有一级台阶时,毫无疑问,只有一种法 其次,当有两级台阶时,就是两种法 那么,三级台阶时,应该两种情况 1、若青蛙先跳一级台阶,接下来就有两种法,要么一级一级地,要么直接就跳上两级...2.若青蛙先跳两级台阶,接下来只能在再一级台阶 所以当有三级台阶时,一共有3种法 那么,一共有4级台阶时,一共有多少种法呢?...所以此时一共有3种法 2.青蛙先跳2级台阶,接下来他还有2级台阶,此处也可以使用之前得出的2级台阶的结果,所以此时一共有2种法 所以当青蛙要4级台阶时,其实就是3级台阶法加上2级台阶法...总结:事实上,n级台阶法就是n-1级台阶法加上n-2级台阶法,而这就可以使用递归的方法来解决 图片表述 一级就只有一种两级有2种法也是非常好理解的 当有3级台阶时,...return 2; }else { return jumpFloor(target-1)+jumpFloor(target-2); } } } 青蛙跳台阶是一个十分经典的问题

    35230

    还是不跳?这是个问题 ...

    如题,还是不跳,永远是个艰难的选择,即使当时的情节再决绝,也终有种种不舍。那么,既然跳槽永远是个不可回避的问题,就让我们平心静气地冷静探讨一下吧。...人最常犯的错误就是从外部找原因,而不是自省其身,从自身找问题。很多时候我们看到的所谓问题,其实我们本身也是问题的一部分。 举个例子,你说团队技术氛围不够浓厚,大家不积极。...所以,先确定是不是问题,是不是自己的问题,是不是外部问题,是问题的话自己能做些什么,不要被表象迷惑。...我的论调,并不是想成为什么职场鸡汤或鸡血,我跳槽经验不多,所以我更侧重的是稳定的品质(当然,另一方面也可以理解为能力不足,不走而已...)。...那么下面,我们就聊一聊暂时还不想的人,要达到一种什么样的状态才算理想。

    48230

    【C语言】C语言⻘蛙跳台阶问题--递归问题

    一、青蛙跳台阶问题 青蛙跳台阶问题是一个经典的递归问题,可以使用递归方法来解决。 问题描述:有n级台阶,青蛙每次可以1级台阶或者2级台阶,问青蛙跳上n级台阶有多少种不同的法。...解决方法: 当n=1时,只有一种法。 当n=2时,有两种法:一次2级台阶或者两次1级台阶。 当n>2时,青蛙的第一次有两种选择:一级台阶或者两级台阶。...如果青蛙第一次一级台阶,那么跳上剩下的n-1级台阶法数目为f(n-1)。 如果青蛙第一次两级台阶,那么跳上剩下的n-2级台阶法数目为f(n-2)。...所以,跳上n级台阶的总法数目为f(n) = f(n-1) + f(n-2)。...:"); scanf("%d", &n); int result = jump(n); printf("跳上%d级台阶法数目为:%d\n", n, result);

    17110

    基于Auto.js的萌猫辅助

    许久不见,甚是想念 这次是一个失去时效性的小脚本,但是其中包括一些东西或许对你们可以有帮助撒 一些要点 因为Auto.js并没有直接的对于触控位置的监听,所以需要对安卓API进行调用 涉及对于画布的使用...6roPD0rdLy91E8hVjMTkR12MjrfSTOXOjGqjwBysCbpMshvy3UNq/yr1ro8EDhZsauL4C3Jen9NOKIRixNlHqMhG5XLmzUzYfybxRo8Mh6c9jS3V6vla...soRCCGmqbSn8+UYv5fzHCFxvT2JXPCLQ7lfgIkAaWtZfuRyFC4At2N/KuNhiGFrdJ6wTbRys9z9jWyrOVIC2VJ21Z7qEPrlWXOBa61UG7jS83I6ejqh5sYzEPAra91s9EOO...k478qWOKFuqV2qh7rpjH6Ecv1sr0dIa4nSOBeyjc0nhXMuJzJnxSM0yRnS4fKrPbse1IJbEjIrlxBI4Vd5slWJYy1uonZVeSVDkSo6If2ODaTSA7dOKQGrUoSH9JSW1907W0/cWKRY5Y2aJ0jS9jXAuA7hXc6THmyC...WGCJGSPGYXU5tbUs90hbRaa91OOVd6OxKyzMHxl4P1EqaCElnG6z3ZDngi7F891rQP/AEQGi9l0RcZSaFyrqihmwkD6f5WdlNLG8EfK3JS5221n3WZ1ORx9BA27hcvKgoeFePO9GU027dSxu0nY7

    87850

    青蛙跳台阶问题的三种解法

    题目:一只青蛙一次可以 1 级台阶,也可以 2 级。求该青蛙跳上一个 n 级的台阶总共有多少种法。 这道题还被 ITEye 放在了博文视点杯有奖答题活动里面。 我提供三种解法。...1、递归求解: 青蛙每一次前,有这样三种情况: (1)只剩 1 级或 0 级台阶了,只能一步或者无法再跳了,那么这条路也走到了终点,走法的种类数可以加 1; (2)可以走 2 级台阶; (3)可以走...1 级台阶。...    total = recursiveCalc(n - 1, total);      return recursiveCalc(n - 2, total);  } 2、概率论思路求解: 首先把问题抽象成简单的数学模型...这时,问题即转化为: z 步骤中,有 x 个两步,y 个一步,相当于 z 个空当,由 x、y 去填充,那么不同填充方法的数目符合概率公式: C(x,z) = z! / ((z-x)!x!)

    89010
    领券