【剑指offer】矩形覆盖(python)

覆盖n为1时,只有一种覆盖方法。
覆盖n为2时,有两种覆盖方法。
要覆盖2xn的大矩形,可以先覆盖2x1的矩形,再覆盖2x(n-1)的矩形;或者先覆盖2x(n-2)的矩形。而覆盖2x(n-1)的矩形和2x(n-2)的矩形可以看成子问题。
递推公式就有了。

# -*- coding:utf-8 -*-
class Solution:
    def rectCover(self, number):
        # write code here
        # base 是n=1和n=2
        if number <= 2: return number
        pre1 = 1
        pre2 = 2
        result = 0
        for i in range(3,number+1):
            result = pre1+pre2
            pre1 = pre2
            pre2 = result
        return result