結果
| 問題 |
No.143 豆
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-01-14 10:37:44 |
| 言語 | Common Lisp (sbcl 2.5.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,344 bytes |
| コンパイル時間 | 1,763 ms |
| コンパイル使用メモリ | 33,124 KB |
| 実行使用メモリ | 22,144 KB |
| 最終ジャッジ日時 | 2024-09-28 01:57:58 |
| 合計ジャッジ時間 | 2,484 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | WA * 17 |
コンパイルメッセージ
; compiling file "/home/judge/data/code/Main.lisp" (written 28 SEP 2024 01:57:55 AM): ; wrote /home/judge/data/code/Main.fasl ; compilation finished in 0:00:00.032
ソースコード
; variables
; k: the number of beans in a pack
; n: the number of packs
; f: the number of family members
; (k n f)
(defparameter *bean-pack-family* ())
(defparameter *input-str* nil)
(defparameter *num-list* ())
(defparameter *age-list* ())
(defvar *num-stack* ())
(defvar *list-stack* ())
; function
(defun separate-n (c)
(cond
((char= c #\ )
(push (parse-integer (coerce (reverse *num-stack*) 'string)) *list-stack*)
(setf *num-stack* '())
)
(t
(push c *num-stack*)))
)
(defun str-to-int-list (str)
(map nil #'separate-n str)
(push (parse-integer (coerce (reverse *num-stack*) 'string)) *list-stack*)
(reverse *list-stack*)
)
(defun input-to-list ()
(setf *input-str* (read-line))
(setf *num-list* (str-to-int-list *input-str*))
(reset-stack)
)
(defun reset-stack ()
(setf *num-stack* ())
(setf *list-stack* ())
)
(defun input-to-age ()
(setf *input-str* (read-line))
(setf *age-list* (str-to-int-list *input-str*))
)
(defun eat-bean (total age-list)
(cond
((< total 0) -1)
((< (length age-list) 1)
total)
(t
(eat-bean (- total (car age-list)) (cdr age-list))))
)
(defun n143 ()
(input-to-list)
(input-to-age)
; (print (eat-bean 100 '(10 20 30)))
(print (eat-bean (* (car *num-list*) (cadr *num-list*))
*age-list*))
)
(n143)