Problem
Description
在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n
,输出铺放方案的总数.
例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图:
例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图:
Input
输入数据由多行组成,每行包含一个整数n,表示该测试实例的长方形方格的规格是2×n (0
Output
对于每个测试实例,请输出铺放方案的总数,每个实例的输出占一行。
Sample Input
1
3
2
Sample Output
1
3
2
题意:都是汉语就不用过解释了;
解题思路:刚开始的时候心思这题怎么用动态规划啊。。。。。。刚画了5个就找到规律了,斐波那契数列嘛;
感悟:英语选修课撸代码真是爽啊!
代码:
#include
#include
#define maxn 55
using namespace std;
long long ans[maxn],n;
void solve()
{
ans[1]=1;
ans[2]=2;
for(int
i=3;i<=50;i++)
ans[i]=ans[i-1]+ans[i-2];
}
int main()
{
//freopen("in.txt","r",stdin);
solve();
while(~scanf("%lld",&n))
printf("%lld
",ans[n]);
return
0;
}
#include
#define maxn 55
using namespace std;
long long ans[maxn],n;
void solve()
{
}
int main()
{
}