nyoj 76 超級台階

2021-07-11 16:24:54 字數 816 閱讀 3771

時間限制:1000 ms | 記憶體限制:65535 kb

難度:3

描述 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法?

注:規定從一級到一級有0種走法。

輸入

輸入資料首先包含乙個整數n(1<=n<=100),表示測試例項的個數,然後是n行資料,每行包含乙個整數m,(1<=m<=40), 表示樓梯的級數。

輸出

對於每個測試例項,請輸出不同走法的數量。

樣例輸入

2 2

3樣例輸出1 2

還是簡單的動態規劃

這裡dp(i)表示從第一級到第i級的走法

因為每次只能跨上一級或二級,我們可以發現,第i級的走法就由第i-1級和第i-2級的情況而來

所以dp(i)=dp(i-1)+dp(i-2)

注意題中的規定從一級到一級有0種走法,那麼dp(1)=0

dp(2)=1

dp(3)=2

dp(4)=dp(2)+dp(3)

…… dp(i)=dp(i-1)+dp(i-2)

#include 

using

namespace

std;

int main() ;

for(i=4; i<=40; i++)

a[i]=a[i-1]+a[i-2];

cin>>n;

while(n--)

超級台階(NYOJ76)

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法?注 規定從一級到一級有0種走法。輸入 輸入資料首先包含乙個整數n 1 n 100 表示測試例項的個數,然後是n行資料,每行包含乙個整數m,...

nyoj 76 超級台階

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法?注 規定從一級到一級有0種走法。輸入 輸入資料首先包含乙個整數n 1 n 100 表示測試例項的個數,然後是n行資料,每行包含乙個整數m,...

nyoj 76 超級台階

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法?注 規定從一級到一級有0種走法。輸入輸入資料首先包含乙個整數n 1 n 100 表示測試例項的個數,然後是n行資料,每行包含乙個整數m,1 ...