变态跳台阶

变态跳台阶

http://www.nowcoder.com/questionTerminal/22243d016f6b47f2a6928b4313c85387

变态跳台阶

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

分析

级台阶有 种跳法,根据最后一次跳台阶的数目可以分解为最后一次一级,则前面需要跳 级,有 种跳法;最后一次跳两级,则前面需要跳 级,有 种跳法。以此类推 易知,
$$
两式相减得,

# -*- coding:utf-8 -*-
class Solution:
    def jumpFloorII(self, n):
        if n<0:
            return 0
        ans = 1
        for i in range(1,n):
            ans = 2*ans
        return ans
全部评论
但是当n=1呢?这个时候你的计算答案为2. 其实只有跳一步,这一种跳法。
点赞 回复 分享
发布于 2020-12-23 11:19
请问时间和空间复杂度是多少呐
点赞 回复 分享
发布于 2020-07-18 17:15
好秀啊谢谢博主
点赞 回复 分享
发布于 2020-02-24 20:07

相关推荐

不愿透露姓名的神秘牛友
06-11 13:34
offe从四面八方来:我真的没时间陪你闹了
点赞 评论 收藏
分享
头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
07-08 13:48
门头沟学院 C++
点赞 评论 收藏
分享
评论
39
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务