結果

問題 No.1764 Square
ユーザー motoshiramotoshira
提出日時 2021-11-27 00:02:19
言語 Common Lisp
(sbcl 2.3.8)
結果
AC  
実行時間 10 ms / 2,000 ms
コード長 1,865 bytes
コンパイル時間 164 ms
コンパイル使用メモリ 39,972 KB
実行使用メモリ 30,776 KB
最終ジャッジ日時 2024-06-29 18:42:39
合計ジャッジ時間 896 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 10 ms
26,664 KB
testcase_01 AC 10 ms
30,652 KB
testcase_02 AC 9 ms
26,792 KB
testcase_03 AC 10 ms
26,664 KB
testcase_04 AC 10 ms
26,792 KB
testcase_05 AC 10 ms
30,776 KB
testcase_06 AC 10 ms
28,620 KB
testcase_07 AC 10 ms
26,924 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
; compiling file "/home/judge/data/code/Main.lisp" (written 29 JUN 2024 06:42:36 PM):

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

ソースコード

diff #

(in-package #:cl-user)

;;------------------------------Preferences------------------------------

(eval-when (:compile-toplevel :load-toplevel :execute)
  #+swank (declaim (optimize (speed 3) (safety 2)))
  #-swank (declaim (optimize (speed 3) (safety 0) (debug 0)))
  #+swank (load "~/ghq/github.com/motoshira/atcoder-submission/ac-tools/act.lisp")
  #+swank (ql:quickload :prove)
  #-swank (declaim (sb-ext:muffle-conditions sb-ext:compiler-note))
  #-swank (sb-ext:disable-debugger)
  (pushnew :inline-generic-funcion *features*))

;;---------------------------------Body---------------------------------

(in-package #:cl-user)

(declaim (inline println))
(defun println (obj &optional (stream *standard-output*))
  (let ((*read-default-float-format* 'double-float))
    (prog1 obj
      (princ obj stream)
      (terpri stream))))

(defun read-into (count &optional (result-type 'list) (reader #'read))
  (coerce (loop :repeat count :collect (funcall reader)) result-type))

(defun main ()
  (let ((qs (make-array 4 :initial-element nil)))
    (push #\E (aref qs 0))
    (push #\A (aref qs 0))
    (push #\B (aref qs 1))
    (push #\C (aref qs 2))
    (push #\D (aref qs 3))
    (dotimes (i (read))
      (let* ((now (rem i 4))
             (next (rem (1+ now) 4))
             (x (pop (aref qs now))))
        (setf (aref qs next)
              (concatenate 'list
                           (aref qs next)
                           (list x)))))
    (loop :for xs :across qs
          :do (mapc #'princ xs)
              (terpri))))

#-swank (main)

#+swank
(defun run ()
  (let ((*standard-input*
          (make-string-input-stream
           (with-output-to-string (*standard-output*)
             (run-program
              (merge-pathnames "copy-or-paste" (truename "~/bin/"))
              '()
              :output *standard-output*)))))
    (main)))
0