矩形覆蓋 java
阿新 • • 發佈:2018-11-08
矩形覆蓋 java
題目描述
- 我們可以用2 * 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 * 1的小矩形無重疊地覆蓋一個2 * n的大矩形,總共有多少種方法?
程式碼1:
public class Solution { public int RectCover(int target) { int n = 0; if(target == 1){ n = 1; } if(target == 2){ n = 2; } if(target > 2){ n = RectCover(target - 1) + RectCover(target - 2); } return n; } }
程式碼2:推薦使用
public class Solution { public int RectCover(int target) { int n = 0; int a = 1, b = 2; if(target == 1){ n = a; } if(target == 2){ n = b; } if(target > 2){ for(int i = 3; i <= target; i++){ n = a + b; a = b; b = n; } } return n; } }