結果

問題 No.39 桁の数字を入れ替え
ユーザー まんしmaNNshi
提出日時 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

ソースコード

diff #

(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 "~%" )
0