題目描述
我們可以用2*1的小矩形橫着或者豎着去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋一個2*n的大矩形,總共有多少種方法?
題目分析
看似沒有頭緒,畫個圖就明白了,還是跳臺階問題。
f(1) = 1,f(2) = 2,f(n) = f(n-1) + f(n-2)
class Solution {
public:
int rectCover(int number) {
if(number <= 2)
return number;
else
return rectCover(number - 1) + rectCover(number - 2);
}
};