描述
有1×n的一个长方形,用1×1、1×2、1×3的骨牌铺满方格。例如当n=3时为1×3的方格,此时用1×1,1×2,1×3的骨牌铺满方格,共有四种铺法。
输入
输入数据由多行组成,每行包含一个整数n,表示该测试实例的长方形方格的规格是1×n (0<n<=50)。
输出
对于每个测试实例,请输出铺放方案的总数,每个实例的输出占一行。
样例输入
1
2
3
2
3
样例输出
1
2
4
2
4
#include<iostream>
using namespace std;
int main(){
__int64 lib[50]={1,2,4};
int i;
for(i=3;i<50;i++)
lib[i]=lib[i-1]+lib[i-2]+lib[i-3];
while(cin>>i)
printf("%I64d\n",lib[i-1]);
return 0;
}