HDOJ 2041 超級樓梯

2021-08-04 16:42:00 字數 625 閱讀 3675

題目鏈結

problem description

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

input

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

output

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

sample input22

3sample output12

題解

#include int main() ;

for (i = 2; i < 41; i++)

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

scanf("%d", &n);

while (n-- && scanf("%d", &i))

printf("%i64d\n", m[i]);

return 0;

}

HDOJ2041超級樓梯筆記 對於dfs的第一嘗試

題目位址 n為1時答案是1,從第一級踏上第一級,只能上一級或二級,不應該是0?開始的時候用了dfs來做,但是我這樣寫的時間複雜度應該為o 2 n 如果沒估算錯,畢竟新手,很可能是錯的。當n為40,2 40太大了,肯定超時,也不出所料,tl。解決方法是dp的思想,如果有n個階梯,那麼可以從第n 1個階...

hdu 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 對於每個測...