骨牌鋪方格
time limit: 1000 ms memory limit: 32768 kib
submit statistic discuss
problem description
在2×n的乙個長方形方格中,用乙個1× 2的骨牌鋪滿方格,輸入n ,輸出鋪放方案的總數. 例如n=3時,為2× 3方格,骨牌的鋪放方案有三種,如下圖:
input
輸入資料由多行組成,每行包含乙個整數n,表示該測試例項的長方形方格的規格是2×n (0< n<=50)。
output
對於每個測試例項,請輸出鋪放方案的總數,每個例項的輸出佔一行。
sample input
1 3
2sample output
1 3
2 **:
#include
#include
int main()
while(~scanf("%d",&n))
return
0;}
思路:可以先看第三塊骨牌,對第三塊骨牌來說,如果第一塊骨牌是橫放的話,那就是看剩餘2塊的排法了,就是f(2),有2種;第
一、二塊骨牌如果是豎放的話,那就看剩餘的一塊了,就是f(1),這就是規律,就是看第一塊骨牌的放法,橫放的話就看f(總的骨牌數-1),豎放的話就是f(總的骨牌數-2),總的排列方法是橫放和豎放之和;在來看當是第n塊骨牌的時候,如果第一塊骨牌橫放,那就是f(n-1),如果第
一、二塊骨牌豎放,就看f(n-2)有多少種放法了,所以總的就是f(n-1)+f(n-2);
note:
注意要用長整型,不然a不了,不信你試試
骨牌鋪方格 遞迴
在2 n的乙個長方形方格中,用乙個1 2的骨牌鋪滿方格,輸入n 輸出鋪放方案的總數.例如n 3時,為2 3方格,骨牌的鋪放方案有三種。輸入資料由多行組成,每行包含乙個整數n,表示該測試例項的長方形方格的規格是2 n 0 n 50 此題用long long 對於每個測試例項,請輸出鋪放方案的總數,每個...
骨牌鋪方格
time limit 1 sec memory limit 128 mb submit 43 solved 12 submit status web board 在2 n的乙個長方形方格中,用乙個1 2的骨牌鋪滿方格,輸入n 輸出鋪放方案的總數.例如n 3時,為2 3方格,骨牌的鋪放方案有三種,如下...
骨牌鋪方格
problem description 在2 n的乙個長方形方格中,用乙個1 2的骨牌鋪滿方格,輸入n 輸出鋪放方案的總數.例如n 3時,為2 3方格,骨牌的鋪放方案有三種,如下圖 input 輸入資料由多行組成,每行包含乙個整數n,表示該測試例項的長方形方格的規格是2 n 0 n 50 outpu...