题目描述
我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
比如n=3时,2*3的矩形块有3种覆盖方法:
示例1
输入
4
返回值
5
思路:参考斐波那契数列,这里改用数组进行存储。
function rectCover(number) {
// write code here
let res = [0]
res[1] = 1
res[2] = 2
for (let i = 3; i <= number; i++) {
res[i] = res[i - 1] + res[i - 2]
}
return res[number]
}