mc #7734(2008/10/03 01:00 GMT) [ Common Lisp ] Rating0/0=0.00
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
(defpackage :doukaku-209 (:use :cl :split-sequence)) (in-package :doukaku-209) (defun parse-integer-or-never (string &key (after #'values)) (let ((num (parse-integer string :junk-allowed 'T))) (if num (funcall after num) string))) (with-open-file (in "doukaku-209.data") (with-open-file (out "doukaku-209.out" :direction :output :if-exists :supersede) (format out "~{~{~A~^ ~}~%~}" (destructuring-bind (title &rest data) (loop :for (id sur fore age) := (split-sequence #\Tab (read-line in nil nil)) :while (and id sur fore age) :collect (list (parse-integer-or-never id) fore sur (parse-integer-or-never age :after #'1+))) `(,title ,@(sort data #'< :key #'first))))))
Rating0/0=0.00-0+
[ reply ]
mc
#7734()
[
Common Lisp
]
Rating0/0=0.00
(defpackage :doukaku-209 (:use :cl :split-sequence)) (in-package :doukaku-209) (defun parse-integer-or-never (string &key (after #'values)) (let ((num (parse-integer string :junk-allowed 'T))) (if num (funcall after num) string))) (with-open-file (in "doukaku-209.data") (with-open-file (out "doukaku-209.out" :direction :output :if-exists :supersede) (format out "~{~{~A~^ ~}~%~}" (destructuring-bind (title &rest data) (loop :for (id sur fore age) := (split-sequence #\Tab (read-line in nil nil)) :while (and id sur fore age) :collect (list (parse-integer-or-never id) fore sur (parse-integer-or-never age :after #'1+))) `(,title ,@(sort data #'< :key #'first))))))Rating0/0=0.00-0+
[ reply ]