51nod 1031 骨牌覆蓋

2022-04-04 23:11:42 字數 601 閱讀 9199

基準時間限制:1 秒 空間限制:131072 kb 分值: 10 難度:2級演算法題

收藏關注在2*n的乙個長方形方格中,用乙個1*2的骨牌排滿方格。

問有多少種不同的排列方法。

例如:2 * 3的方格,共有3種不同的排法。(由於方案的數量巨大,只輸出 mod 10^9 + 7 的結果)

輸入n(n <= 1000)
output

輸出數量 mod 10^9 + 7
input示例

3
output示例

3
2*1有一種

2*2有2*1+2*1兩種

2*3有2*1+2*1+2*1三種 也就是 2*1+2*2;

所以遞推公式是 f[i]=f[i-1]+f[i-2];

其中f[1]=1,f[2]=2;

屠龍寶刀點選就送

#include int f[1002

],n;

intmain()

51NOD 1031 骨牌覆蓋

1031 骨牌覆蓋 基準時間限制 1 秒 空間限制 131072 kb 分值 10 難度 2級演算法題 在2 n的乙個長方形方格中,用乙個1 2的骨牌排滿方格。問有多少種不同的排列方法。例如 2 3的方格,共有3種不同的排法。由於方案的數量巨大,只輸出 mod 10 9 7 的結果 輸入n n 10...

51nod 1031 骨牌覆蓋

在2 n的乙個長方形方格中,用乙個1 2的骨牌排滿方格。問有多少種不同的排列方法。例如 2 3的方格,共有3種不同的排法。由於方案的數量巨大,只輸出 mod 10 9 7 的結果 input 輸入n n 1000 output 輸出數量 mod 10 9 7 input示例 3 output示例 3...

51nod 1031 骨牌覆蓋

對於長為n來說,相當於n 1在後面加了乙個豎著放的,對於n 2來說相當於加了乙個2 2的格仔,但是對於乙個2 2的格仔本來有兩種畫法,由於豎著畫的那種和n 1的部分有重疊,所以只加一次即可,對於n 3,會發現三種擺法都在n 1和n 2的方法中出現過了,所以遞推公式就是f n f n 1 f n 2 ...