小矩阵覆盖大矩阵

    我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?

一看到这种题,分析一下规律得知,除了前两种,后面的都是前个方法的总和,用递归即可实现。

class Solution {
public:
    int rectCover(int number) {
        if(number==0)return -1;
        if(number==1)return 1;
        if(number==2)return 2;
        else{
            return rectCover(number-1)+rectCover(number-2);
        }
    }
};

 

posted @ 2015-04-15 13:03  LarryKnight  阅读(342)  评论(0编辑  收藏  举报