Skip to content

Instantly share code, notes, and snippets.

@fredhsu
fredhsu / counting-change.clj
Created May 8, 2011 22:31
SICP 1.2 in Clojure
(defn first-denomination [kinds-of-coins]
(cond (= kinds-of-coins 1) 1
(= kinds-of-coins 2) 5
(= kinds-of-coins 3) 10
(= kinds-of-coins 4) 25
(= kinds-of-coins 5) 50))
(defn cc [amount kinds-of-coins]
(cond (= amount 0) 1
(or (< amount 0) (= kinds-of-coins 0)) 0
:else (+ (cc amount