結果
| 問題 | No.39 桁の数字を入れ替え | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2025-04-29 22:16:22 | 
| 言語 | Common Lisp (sbcl 2.5.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 9 ms / 5,000 ms | 
| コード長 | 980 bytes | 
| コンパイル時間 | 626 ms | 
| コンパイル使用メモリ | 26,880 KB | 
| 実行使用メモリ | 19,840 KB | 
| 最終ジャッジ日時 | 2025-04-29 22:16:24 | 
| 合計ジャッジ時間 | 1,750 ms | 
| ジャッジサーバーID (参考情報) | judge2 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 19 | 
コンパイルメッセージ
; compiling file "/home/judge/data/code/Main.lisp" (written 29 APR 2025 10:16:22 PM): ; wrote /home/judge/data/code/Main.fasl ; compilation finished in 0:00:00.149
ソースコード
(defparameter N (make-array 9))
(defparameter keta 0)
(loop for char = (read-char nil nil) do
        (if (eq char #\Newline) (return))
        (setf (aref N keta) (digit-char-p char))
        (incf keta)
)
;(print N)
;(print keta)
(defvar st)
(defvar swapf)
(defvar temp)
(defvar maxn)
(defvar maxi)
(loop for j from 0 to (- keta 2) do
        (setq swapf nil)
        (setq maxn -1)
        (setq st j)
        ;(loop for i from (+ st 1) to (- keta 1) do
        (loop for i from (- keta 1) downto (+ st 1) do
                (if (< maxn (aref N i)) (progn (setq maxn (aref N i)) (setq maxi i )))
        )
        (if (< (aref N st) maxn) (progn
                (setq temp (aref N st))
                (setf (aref N st) maxn)
                (setf (aref N maxi) temp)
                (setq swapf t)
                )
        )
        (if swapf (return))
)
;(print N)
;(print keta)
(loop for i from 0 to (- keta 1) do
        (format t "~d" (aref N i))
)
(format t "~%" )
            
            
            
        