DL
Size: a a a
DL
E
MB
E
MB
KR
DL
ST
(defn combination
([alphabet tail data limit] (combination alphabet tail data limit '()))
([alphabet tail data limit result]
(cond
(empty? tail) result
(= (count data) limit) (cons data result)
:else (cond->> (combination alphabet (rest tail) data limit result)
(or (empty? data) (not= (first tail) (first data)))
(combination alphabet alphabet (cons (first tail) data) limit)))))
E
PL
PL
DF
ND
AC
PP
DL
DL