(defparameter A (read-line)) (setq A (read-from-string (concatenate 'string "(" A ")" ))) (setq A (sort A #'< )) ;;;(print A) (defparameter p (make-array 14 :initial-element 0)) (loop for i from 0 to 4 do (incf (aref p (nth i A))) ) (defparameter pcnt 0) (defparameter tcnt 0) (loop for i from 1 to 13 do (if (= (aref P i) 2) (incf pcnt)) (if (= (aref P i) 3) (incf tcnt)) ) ;;(print pcnt) ;(print tcnt) (if (and (= pcnt 1) (= tcnt 1)) (format t "FULL HOUSE~%")) (if (and (= pcnt 0) (= tcnt 1)) (format t "THREE CARD~%")) (if (and (= pcnt 2) (= tcnt 0)) (format t "TWO PAIR~%")) (if (and (= pcnt 1) (= tcnt 0)) (format t "ONE PAIR~%")) (if (and (= pcnt 0) (= tcnt 0)) (format t "NO HAND~%"))