码迷,mamicode.com
首页 > 其他好文 > 详细

HDU2046 骨牌铺方格

时间:2015-04-03 17:02:02      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

Description

在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数. 
例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图: 
技术分享

 

Input

输入数据由多行组成,每行包含一个整数n,表示该测试实例的长方形方格的规格是2×n (0<n<=50)。

 

Output

对于每个测试实例,请输出铺放方案的总数,每个实例的输出占一行。

 

Sample Input

1

3

2


Sample Output

 

1

3

2

 

----------------------------------------------------------------------------------------------------

此题实际为斐波那契数列,只要看出这一点就很容易做出。但是要注意数列中后面的数可能会非常大。

 

具体代码如下:

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int main()
 5 {
 6     __int64 f[51];
 7     int n;
 8     f[1]=1;f[2]=2;
 9     for(int i=3;i<=50;i++)
10         f[i]=f[i-1]+f[i-2];
11     while(scanf("%d",&n)!=EOF)
12     {
13         printf("%I64d\n",f[n]);
14     }
15     return 0;
16 }

 

HDU2046 骨牌铺方格

标签:

原文地址:http://www.cnblogs.com/ahoon/p/4390248.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!