矩形覆盖

矩形覆盖_牛客网

https://www.nowcoder.com/practice/72a5a919508a4251859fb2cfb987a0e6?tpId=13&tqId=11163&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

题目描述

我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?

思路:依旧是斐波那契数列,讨论区中有很多作图解释方便理解。注意n<1的情况。

AC代码:

def rectCover(self, number):
    # write code here
    if number == 0:
        return 0
    a = b = 1
    for _ in range(number):
        a, b = b, a + b
    return a
全部评论

相关推荐

不愿透露姓名的神秘牛友
11-26 18:54
说等下个版本吧的发呆爱好者很贪睡:佬最后去了哪家呀
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务