Name: Anonymous 2012-01-21 6:59
How come it isn't used outside of academia?
(defn tupz [d]
(let [d (str d) l (count d)]
(reduce (fn [tuples size]
(if (= 1 (count (distinct (partition size d))))
(assoc tuples (/ l size) (subs d 0 size))
tuples))
{}
((fn factorize [n]
(filter #(zero? (rem n %)) (range 1 n)))
l))))
(defn dubz? [n] (contains? (tupz n) 2))
(defn quadz? [n] (contains? (tupz n) 4))
(dubz? 123123)
=> true
(dubz? 123123123123)
=> true
(quadz? 123123)
=> false
(quadz? 123123123123)
=> true
(tupz 123123123123)
=> {2 "123123", 4 "123"}