问题描述
有一个大小是 2 x n 的网格,现在需要用2种规格的骨牌铺满,骨牌规格分别是 2 x 1 和 2 x 2,请计算一共有多少种铺设的方法。
输入
加分项列多(T<=20)、"行图"T T=20)、"已分列"项分项项、“项长”(N<=30)、“亮起”"文标"要求、“已表示"要求”“已表示"和"已表示”"已表示"要求、"已表示"已表示、“已表示"和"已表示"已调和、“已调和"和"已变为"已调和”“已调用"和"已变为"已调用"和"已变为"已调用"项分项为"已调用"和"已变”。”
输出
输出一共有多少种铺设的方法,每组数据的输出占一行。
示例输入
3
2
8
12
样本输出
3
171
2731
代码:
#include<stdio.h>
int a(int m)
{
if(m==1)
{
return 1;
}
if(m==2)
{
return 3;
}else
{
return a(m-1)+2*a(m-2);
}
}
int main()
{
int n,i,m;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&m);
printf("%d\n",a(m));
}
return 0;
}