13 lines
170 B
Clojure
13 lines
170 B
Clojure
|
(defn factors [x]
|
||
|
(if (== x 1)
|
||
|
'()
|
||
|
(let [f
|
||
|
(first
|
||
|
(filter (fn [e] (zero? (mod x e)))
|
||
|
(range 2 (+ x 1))
|
||
|
)
|
||
|
)]
|
||
|
(conj (factors (/ x f)) f)
|
||
|
)
|
||
|
)
|
||
|
)
|