原題描述:
我們可以用2*1的小矩形橫着或者豎着去覆寫更大的矩形。請問用n個2*1的小矩形無重疊地覆寫一個2*n的大矩形,總共有多少種方法?
思路:
畫個圖,可以明顯看出該問題實質上就是爬樓梯問題。
class Solution {
public:
int rectCover(int number) {
int a[2000];
a[0]=0;
a[1]=1;
a[2]=2;
for(int i=3;i<=number;i++){
a[i]=a[i-1]+a[i-2];
}
return a[number];
}
};