1. 程式人生 > >骨牌鋪方格 HDU

骨牌鋪方格 HDU

在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
#include <iostream>
#include<string.h>
#include<stdio.h>
using namespace std;
typedef long long ll;
ll dp[61];
int n;
int main()
{
    dp[1]=1;
    dp[2]=2;
    for(int i=3; i<=50; i++)
    {
        dp[i]=dp[i-1]+dp[i-2];
    }
    while(~scanf("%d",&n))
    {
        printf("%lld\n",dp[n]);
    }
    return 0;
}