summaryrefslogtreecommitdiff
path: root/clojure/p3.clj
blob: 39ae510672f785e9a99e5c224b1a9fb79852dfa4 (plain) (blame)
1
2
3
4
5
6
7
8
9
(loop [number 600851475143
       divisors ()]
  (if (> number 1)
    (let [div (or (some #(if (zero? (mod number %)) % false)
                    (cons 2 (range 3 (/ number 2) 2)))
                  number)]
      (recur (/ number div)
             (cons div divisors)))
    (println (apply max divisors))))