题目描述
我们可以用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
京公网安备 11010502036488号