結果

問題 No.3044 April Sum of Odd
ユーザー Lisp_CoderLisp_Coder
提出日時 2024-05-16 02:05:44
言語 Common Lisp
(sbcl 2.3.8)
結果
AC  
実行時間 71 ms / 2,000 ms
コード長 754 bytes
コンパイル時間 116 ms
コンパイル使用メモリ 39,676 KB
実行使用メモリ 32,808 KB
最終ジャッジ日時 2024-05-16 02:05:46
合計ジャッジ時間 1,567 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 8 ms
25,900 KB
testcase_01 AC 8 ms
25,896 KB
testcase_02 AC 7 ms
25,900 KB
testcase_03 AC 12 ms
28,192 KB
testcase_04 AC 12 ms
26,020 KB
testcase_05 AC 13 ms
26,152 KB
testcase_06 AC 15 ms
28,240 KB
testcase_07 AC 9 ms
26,024 KB
testcase_08 AC 11 ms
26,148 KB
testcase_09 AC 14 ms
30,116 KB
testcase_10 AC 71 ms
28,608 KB
testcase_11 AC 30 ms
32,808 KB
testcase_12 AC 9 ms
25,896 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
; compiling file "/home/judge/data/code/Main.lisp" (written 16 MAY 2024 02:05:44 AM):

; wrote /home/judge/data/code/Main.fasl
; compilation finished in 0:00:00.055

ソースコード

diff #

(defun main ()
  (let* ((n (read))
         (m (read))
         (a (make-array n)))

    ;; 入力を読み込む
    (dotimes (i n)
      (setf (aref a i) (read)))

    (let ((i 0))
      (loop while (< i n)
            do (when (oddp (aref a i))
                 (let ((ans (aref a i))
                       (ct 1)
                       (j (1+ i)))
                   (loop while (and (< j n) (oddp (aref a j)))
                         do (progn
                              (incf ct)
                              (incf ans (aref a j))
                              (incf j)))
                   (when (>= ct m)
                     (format t "~a~%" ans))
                   (setf i j)))
            (incf i)))))

;; Call the main function
(main)
0