解题思路:
(1)动态规划 dp[n]=dp[n-1]+2*dp[n-2]
(2)因为dp[n-1]到dp[n]和dp[n-2]到dp[n]中的一种方法重复
(3)所以dp[n]=dp[n-1]+dp[n-2],dp[1]=1,dp[2]=2
class Solution {
public:
int rectCover(int number) {
if(number==0) return 0;
if(number==1) return 1;
if(number==2) return 2;
int a=1,b=2,c=0;
for(int i=3;i<=number;i++) {
c=a+b;
a=b;
b=c;
}
return c;
}
};