小于10的自然数中是3的倍数或者5的倍数的数,包括3,5,6,9。这些数的和为23。
请求出小于1000自然数中是3的倍数或者5的倍数的数的和。
(reduce + (filter #(or (zero? (rem % 5)) (zero? (rem % 3))) (range 1 1000)))
didasoft
2014-12-19
小于10的自然数中是3的倍数或者5的倍数的数,包括3,5,6,9。这些数的和为23。
(reduce + (filter #(or (zero? (rem % 5)) (zero? (rem % 3))) (range 1 1000)))
|
||
didasoft
2014-12-19
|
||
didasoft
2014-12-19
13159的素数因子,包括5,7,13,29。
求600851475143的最大的素数因子。
(defn factor? "determine whether input number is a factor of another parameter" [source dest] (let [divend (/ dest source)] (== divend (bigint divend)))) (reduce max (loop [result [] number 600851475143 divider 2] (if (> divider number) result (if (factor? divider number) (let [new-result (conj result divider) new-divider 2] (recur new-result (/ number divider) new-divider)) (recur result number (inc divider)) ) ) ))
|