結果

問題 No.312 置換処理
ユーザー Common Lisp
提出日時 2024-11-06 11:41:44
言語 Common Lisp
(sbcl 2.5.0)
結果
AC  
実行時間 22 ms / 2,000 ms
コード長 565 bytes
コンパイル時間 378 ms
コンパイル使用メモリ 34,696 KB
実行使用メモリ 30,140 KB
最終ジャッジ日時 2024-11-06 11:41:47
合計ジャッジ時間 2,339 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 45
権限があれば一括ダウンロードができます
コンパイルメッセージ
; compiling file "/home/judge/data/code/Main.lisp" (written 06 NOV 2024 11:41:44 AM):

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

ソースコード

diff #

(defun main (&rest argv)
  (declare (ignorable argv))
  (let* ((n (read))
         (res 0))
    (when (zerop (mod n 3))
          (format t "3~%")
          (return-from main))
    (when (zerop (mod n 4))
          (format t "4~%")
          (return-from main))
    (loop for i from 5 to (isqrt n) by 2
          when (zerop (mod n i))
            do (setq res i)
               (return))
    (cond ((and (evenp n) (zerop res))
            (setq res (floor n 2)))
          ((zerop res)
            (setq res n))
          (t))  
    (format t "~d~%" res)))

(main)
0