只有两种情况
1.从后面竖着放一个,问题转化成n-1规模的
2.从后面横着放两个,问题转化成n-2规模的
状态转移方程为
dp[i]=dp[i-1]+dp[i-2];
/*HDOJ1163
作者:陈佳润
2013-04-08
*/
#include<iostream>
using namespace std;
__int64 num[55];
int main(){
int i,n;
num[1]=1;num[2]=2;
for(i=3;i<=50;i++){
num[i]=num[i-1]+num[i-2];
}
while(cin>>n){
printf("%I64d\n",num[n]);
}
return 0;
}