骨牌铺方格

骨牌铺方格

Time Limit: 1000 ms Memory Limit: 32768 KiB

Problem 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

Hint

hdoj2046 有链接提示的题目请先去链接处提交程序,AC后提交到SDUTOJ中,以便查询存档。

Source

HDU LCY



01 #include <stdio.h>
02 int main ()
03 {
04     int n , i;
05     long long f[56];
06     while(~scanf("%d" , &n))
07     {
08         f[1] = 1;
09         f[2] = 2;
10         for (i = 3 ; i <= n ; i++)
11         {
12             f[i] = f[i - 1] + f[i - 2];
13         }
14         printf("%lld\n" , f[n]);
15     }
16     return 0;
17 }
18  
19  
01 #include <stdio.h>
02 int main ()
03 {
04     int n , i;
05     long long f[56];
06     while(~scanf("%d" , &n))
07     {
08         f[1] = 1;
09         f[2] = 2;
10         for (i = 3 ; i <= n ; i++)
11         {
12             f[i] = f[i - 1] + f[i - 2];
13         }
14         printf("%lld\n" , f[n]);
15     }
16     return 0;
17 }
18  
19