1. 程式人生 > >華為上機機試練習--------------------矩形覆蓋---------------------java語言描述

華為上機機試練習--------------------矩形覆蓋---------------------java語言描述

題解 subject 多少 spa -- pan i++ pre res

題目描述

我們可以用2*1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋一個2*n的大矩形,總共有多少種方法?

題解:

直接找規律,發現a[i] = a[i - 1] + a[i - 2];

public class Solution {
    public int RectCover(int target) {
        if(0 == target){
            return 0;
        }else if(1 == target){
            return 1;
        }
        
int[] res = new int[target+1]; res[0] = 1; res[1] = 1; for(int i = 2; i <= target; i++){ res[i] = res[i-1] + res[i-2]; } return res[target]; } }

華為上機機試練習--------------------矩形覆蓋---------------------java語言描述