矩形覆盖

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

解题思路
同样地写出n=1,2,3,...时候有多少种方法,找出规律并用数学归纳法证明之。

python solution:

# -*- coding:utf-8 -*-
class Solution:
    def rectCover(self, number):
        if number<=3:
            return number
        a,b = 2,3
        while number>3:
            number -= 1
            temp = a+b
            a = b 
            b = temp
        return b
posted @ 2019-03-02 17:54  bernieloveslife  阅读(105)  评论(0)    收藏  举报