首页 > 其他 > 详细

HDU2046 骨牌铺方格

时间:2015-04-03 16:59:37      阅读:273      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!