题目描述
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
解题思路:假设用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形有dp[n]种方法,则dp[n] = dp[n-1] + dp[n-2] n >= 2.
Python代码如下:
# -*- coding:utf-8 -*-
class Solution:
def rectCover(self, number):
# write code here
if not number:
return 0
a,b = 1,2
for i in range(number-1):
a,b = b,a+b
return a