一、题目
二、思路
关键:找到规律,动态规划
从第三个开始,dp[i]=dp[i-1]+dp[i-2];
三、代码
class Solution {
public:
int rectCover(int number) {
if(number==0)
{
return 0;
}
else if(number==1)
{
return 1;
}
else if(number==2)
{
return 2;
}
else if(number==3)
{
return 3;
}
int dp[number];
dp[0]=1;
dp[1]=2;
dp[2]=3;
for(int i=3;i<number;++i)
{
dp[i]=dp[i-1]+dp[i-2];
}
return dp[number-1];
}
};