ちなみにフィボナッチ数を求める方法は4つほどあって、その中の一つがDPです。DPは本来とても難しいテクニックですが、フィボナッチとかは比較的易しくて取っ掛かりやすいと思います。 ちなみに残りの3つはこんな感じ。 1つ目 定義通り(一番遅い) DEF F(N) IF N==0 THEN RETURN 0 IF N==1 THEN RETURN 1 RETURN F(N-1)+F(N+1) END INPUT "",N PRINT F(N)
このコメントはネタバレを含んでいます。
こういち2018/12/4 21:21 ネタバレ◆ou0jbJnEJ0Kb
2つ目 メモ化(正確にはメモ化はDPの一種) DIM A[1000] 'メモ用配列 DEF F(N) IF A[N]!=-1 THEN RETURN A[N] A[N]=F(N-1)+F(N+1) RETURN A[N] END FILL A,-1 '配列初期化 A[0]=0 A[1]=1 INPUT "",N PRINT F(N)