題目描述
我們可以用2*1的小矩形橫着或者豎着去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋一個2*n的大矩形,總共有多少種方法?
時間限制:1秒 空間限制:32768K 熱度指數:320874
解題思路:這道題其實就是斐波那契數列數列,具體的思路和之前的青蛙跳臺階一樣,不懂的可以看上兩篇文章(青蛙跳臺階)還有斐波那契數列的公式。
代碼如下:
// 斐波那契數列
public class Solution {
public int RectCover(int target) {
if (target <= 0) {
return 0;
}
if (target == 1) {
return 1;
} else if (target == 2) {
return 2;
}
return this.RectCover(target - 1) + this.RectCover(target - 2);
}
}