Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;;; Dumb task
- (defparameter input-data (list (list 0 1 0 1 2)
- (list 0 0 0 1 1)
- (list 1 1 1 1 0)
- (list 1 1 1 1 1)))
- (defun number-of-same-elements (lst)
- (let ((table (make-hash-table)))
- (loop for elem in lst do
- (multiple-value-bind (value found) (gethash elem table)
- (if found
- (setf (gethash elem table) (1+ value))
- (setf (gethash elem table) 1))))
- (loop for value being the hash-value of table
- maximize value)))
- (defun sort-by-the-same (lst-of-lst)
- (sort (copy-seq lst-of-lst) #'> :key #'number-of-same-elements))
- (format t "~{~A~%~}~%" input-data)
- (format t "~{~A~%~}~%" (sort-by-the-same input-data))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement