題目描述
我們可以用2*1的小矩形橫着或者豎着去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋一個2*n的大矩形,總共有多少種方法?
思路:
int rectCover(int number)
{
//迭代
if(number<1) return 0;
if(number==1) return 1;
if(number==2) return 2;
int x=1,y=2;
for(int i=0;i<=number-3;i++)
{
y=x+y;
x=y-x;
}
return y;
/*直接遞歸
if(number<1) return 0;
if(number==1) return 1;
if(number==2) return 2;
return rectCover(number-1)+rectCover(number-2);
*/
}