エンコーディングテスト(バックグラウンドダイナミックプログラミング(10870回:フィボナッチ数5)


質問する
フィボナッチ数は0と1で始まる.0番目のフィボナッチ数は0で、1番目のフィボナッチ数は1です.2番目から前の2つのフィボナッチ数の和です.
このようにしてFn=Fn−1+Fn−2(n≧2)となる.
n=17までは、次のようにフィボナッチ数を用いる.
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597
nが与えられると,n次フィボナッチ数を求めるプログラムを記述する.
入力
最初の行はnです.nは20以下の自然数または0である.
しゅつりょく
1行目はn番目のフィボナッチ数を出力する.
コピー例入力1
10
コピー例出力1
55
私の答え:
d = [0] * 100

d[1] = 0
d[2] = 1
n = int(input())

for i in range(3, n+1):
    d[i] = d[i-1] + d[i-2]

print(d[n])
其他回答:
TAKEAWAY:
感じ: