有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法?
注:規定從一級到一級有0種走法。
輸入資料首先包含乙個整數n(1≤n≤100),表示測試例項的個數,然後是n行資料,每行包含乙個整數m,(1≤m≤40), 表示樓梯的級數。
對於每個測試例項,請輸出不同走法的數量。
2 2 31
2動態規劃,如果使用遞迴,演算法時間度太大,易超時。 f[
i]=⎧
⎩⎨⎪⎪
⎪⎪01
2f[i
−1]+
f[i−
2]i=
0,1i
=2i=
3i>3
#include
#include
using
namespace
std;
int f[40];
int dp(int n)
return f[n];
}int main()
return
0;}
#include
using
namespace
std;
int main()
;for(int i=4;i<=40;i++)
int k;
cin>>k;
for(int i=0;iint j;
cin>>j;
cout
<
由源**可知,演算法時間複雜度為o(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,...
ny76 超級台階
時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法?注 規定從一級到一級有0種走法。輸入 輸入資料首先包含乙個整數n 1 n 100 表示測試例項的個數,然後是n行資料,每行包含乙個整數m,...