RosettaCodeData/Task/Combinations/Racket/combinations.rkt
2023-07-01 13:44:08 -04:00

9 lines
260 B
Racket

(define sublists
(match-lambda**
[(0 _) '(())]
[(_ '()) '()]
[(m (cons x xs)) (append (map (curry cons x) (sublists (- m 1) xs))
(sublists m xs))]))
(define (combinations n m)
(sublists n (range m)))