結果
問題 |
No.526 フィボナッチ数列の第N項をMで割った余りを求める
|
ユーザー |
|
提出日時 | 2024-09-28 19:23:25 |
言語 | Scheme (Gauche-0.9.15) |
結果 |
AC
|
実行時間 | 22 ms / 2,000 ms |
コード長 | 434 bytes |
コンパイル時間 | 403 ms |
コンパイル使用メモリ | 7,076 KB |
実行使用メモリ | 16,128 KB |
最終ジャッジ日時 | 2024-09-28 19:23:27 |
合計ジャッジ時間 | 1,358 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 12 |
ソースコード
(define (fib n m) (define (fib-iter a b p q count) (cond ((zero? count) (modulo b m)) ((even? count) (fib-iter a b (modulo (+ (* p p) (* q q)) m) (modulo (+ (* 2 p q) (* q q)) m) (quotient count 2))) (else (fib-iter (modulo (+ (* b q) (* a q) (* a p)) m) (modulo (+ (* b p) (* a q)) m) p q (- count 1))))) (fib-iter 1 0 0 1 n)) (define yuki526 (display (fib (- (read) 1) (read))))