HDU oj 2041 超級樓梯

2022-06-12 07:30:13 字數 668 閱讀 1134

problem description

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

input

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

output

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

sample input

2 2

3sample output12

分析:第n級台階只能從第n-1層或n-2層上來,所以計算第n級只需要將n-1級的走法加上n-2級的走法

即:f(n)=f(n-1)+f(n-2)

很像斐波那契數列,是典型的遞迴問題

注意點:

//

遞迴解法,但不是遞迴寫法

//遞迴寫起來可能會超時

#includeusing

namespace

std;

intmain()

if(m==2

) cout

if(m==3

) cout

cout

<}

return0;

}

HDUOJ 2041超級樓梯

problem description 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少種走法?input 輸入資料首先包含乙個整數n,表示測試例項的個數,然後是n行資料,每行包含乙個整數m 1 m 40 表示樓梯的級數。output 對於每個測試例項,請輸出不同...

1 10 hduoj 2041 超級樓梯

problem description 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少種走法?input 輸入資料首先包含乙個整數n,表示測試例項的個數,然後是n行資料,每行包含乙個整數m 1 m 40 表示樓梯的級數。output 對於每個測試例項,請輸出不同...

hdu 2041 超級樓梯

problem description 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少種走法?input 輸入資料首先包含乙個整數n,表示測試例項的個數,然後是n行資料,每行包含乙個整數m 1 m 40 表示樓梯的級數。output 對於每個測試例項,請輸出不同...