fork(5) download
  1. (defun is_in(el spis)
  2. (cond
  3. ((null spis) nil )
  4. ((eql el (car spis)) T)
  5. (1 (is_in el (cdr spis)) )
  6. )
  7. )
  8.  
  9. (defun remove_first(el spis)
  10. (cond
  11. ((null spis) nil )
  12. ((eql el (car spis)) (cdr spis))
  13. (1 (cons (car spis) ( remove_first el (cdr spis) ) ) )
  14. )
  15. )
  16.  
  17. (defun group(spis)
  18. (cond
  19. ((null spis) nil )
  20. ((is_in (car spis) (cdr spis)) (cons (car spis) (group (cons (car spis) (remove_first (car spis) (cdr spis))))))
  21. (1 (cons (car spis) (group (cdr spis))) )
  22. )
  23. )
  24.  
  25. (PRINT (group '(1 2 1 3 2 5 4 7 4 1)))
Success #stdin #stdout 0.02s 10592KB
stdin
Standard input is empty
stdout
(1 1 1 2 2 3 5 4 4 7)