Skip to content

Instantly share code, notes, and snippets.

@ponkore
Created April 25, 2012 13:30
Show Gist options
  • Save ponkore/2489720 to your computer and use it in GitHub Desktop.
Save ponkore/2489720 to your computer and use it in GitHub Desktop.
Project Euler Problem 6
;;; The sum of the squares of the first ten natural numbers is,
;;; 1^2 + 2^2 + ... + 10^2 = 385
;;; The square of the sum of the first ten natural numbers is,
;;; (1 + 2 + ... + 10)^2 = 55^2 = 3025
;;; Hence the difference between the sum of the squares of the first ten natural numbers
;;; and the square of the sum is 3025 - 385 = 2640.
;;; Find the difference between the sum of the squares of the first one hundred natural numbers
;;; and the square of the sum.
(defn calc-diffs [seq]
(let [square-sum (reduce + (map #(* % %) seq))
sum (reduce + seq)
sum-square (* sum sum)]
(- sum-square square-sum)))
(calc-diffs (take 10 (iterate inc 1)))
;;;=>2640
(calc-diffs (take 100 (iterate inc 1)))
;;;=>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment