Common Lisp備忘録

忘れた記憶を取り戻す

Entries from 2024-04-01 to 1 month

ABC 003b.lisp

ACしたコード その1 (let ((a (concatenate 'list (read-line))) (b (concatenate 'list (read-line))) (ans '()) (flag t)) (mapcar #'(lambda (n m) (if (char= n m) nil (cond ((char= n #\@) (push m ans)) ((char= m #\@) (push n ans)) (t (push #\b a…

ABC 003a.lisp

ACしたコード (let ((x (read))) (format t "~A~%" (* (/ (reduce #'+ (loop for i from 1 to x collect i)) x) 10000))) LOOPマクロ (loop for i from 1 to 10 collect i) (1 2 3 4 5 6 7 8 9 10) INTEGERを要素とするリストの和 Break 3 [4]> (reduce #'+ …

ABC 002b.lisp

標準入力した文字列を、文字を要素とするリストに変換 (let* ((lst (concatenate 'list (read-line))) (lst2 (mapcar #'type-of lst))) (format t "~A~%" lst) (format t "~S~%" lst) (format t "~A~%" lst2) (format t "~S~%" lst2)) とすると » cl 002b.li…

ABC 001b.lisp

ABC 001bでACしたソースコードが以下の通り。 (let* ((m (read)) (vv (cond ((< m 100) "00") ((<= m 5000) (format nil "~2,'0d" (* m (expt 10 -2)))) ((<= m 30000) (+ (* m (expt 10 -3)) 50)) ((<= m 70000) (+ (/ (- (/ m 1000) 30) 5) 80)) (t 89))))…

備忘録始めました。

時間開けるとCommon Lispに関する知識が抜け落ちるので、素早く思い出せるように。 当分は昔解いたAtCoder Beginners Contestで躓いたこととか、記法を忘れたこととかやると思う。