コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
こういち ◆ou0jbJnEJ0Kb
2018/12/25 16:29 ネタバレ
ACLS
OPTION DEFINT
DEF F(N)
 IF N==1THEN RETURN 1
 IF N==2THEN RETURN 1
 IF N==3THEN RETURN 2
 RETURN F(N-1)+F(N-3)
END
DEF MMUL N,A[],B[],C[]
 DIM T1[N,N],T2[N,N]
 VAR I,J,K
 COPY T1,A:COPY T2,B:FILL C,0
 FOR J=0 TO N-1
  FOR I=0 TO N-1
   FOR K=0 TO N-1
    INC C[J,I],T1[J,K]*T2[K,I]
   NEXT K
  NEXT I
 NEXT J
END
DEF MPOW N,A,M,O
 VAR I
 DIM T[N,N]
 COPY T,A:FILL O,0
 FOR I=0TO N-1
  O[I,I]=1
 NEXT I
 WHILE M
  IF M AND 1 THEN
   MMUL N,O,T,O
  ENDIF
  MMUL N,T,T,T
  M=M>>1
 WEND
END
DIM A[3,3]
A[0,0]=1
A[0,2]=1
A[1,0]=1
A[2,1]=1
VAR N
INPUT N
MPOW 3,A,N,A
PRINT A[0,0],F(N)

コメント

アバター
くらげ 2018/12/25 18:15 ◆wwGQuv.PrBB8
結局どうなるんですか(憤怒)
アバター
HUCU 2018/12/25 18:26 ◆B7lOIJDWuOqi
それで何をする
アバター
Ryou Tanpo 2018/12/25 19:39 ◆AI5iRr9FjmkJ
まあ僕も打って動かしたわけじゃないからよくわかんないけど……
結局どうなるかは実行すればわかると思います
アバター
こういち 2018/12/25 20:59 ◆ou0jbJnEJ0Kb
正直ボクも分からないです。
欲望のままに打ってました。
ただひとつ言えることはエラー出る文書いてたのでちょっと直しました。
アバター
Ryou Tanpo 2018/12/26 9:45 ◆AI5iRr9FjmkJ
えっw
アバター
こういち 2018/12/26 11:46 ◆ou0jbJnEJ0Kb
実行結果。
恐らくトリボナッチ数の亜種的な何か。
あとF()が想像以上に重い。
逆にMPOWは爆速。
アバター
こういち 2018/12/26 12:13 ◆ou0jbJnEJ0Kb
VAR N,I,T,D=1,E=0,F=0
INPUT ,N
FOR I=1TO N
 T=D+F
 F=E
 E=D
 D=T
 PRINT T,
NEXT I

動的計画法でも書いてみる。
速度はMPOWとF()の中間ぐらい。
Nがきわめて小さいときや、1番目のやつから順に全て表示させるときに高速。

コメントを書く

この投稿にはコメントできません。

- WEB PATIO -