矩形覆盖
我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
int rectCover(int number) {
if (number == 0)
{
return 0;
}
if (number == 1)
{
return 1;
}
if (number == 2)
{
return 2;
}
int rectNum = 0;
int n1 = 1;
int n2 = 2;
// f(n) = f(n-1) + f(n-2)
for(int i = 3;i<=number; ++i){
rectNum = n1+n2;
n1 = n2;
n2 = rectNum;
}
return rectNum;
}