Skip to content

Instantly share code, notes, and snippets.

@robhanlon22
Created September 9, 2011 20:49
Show Gist options
  • Save robhanlon22/1207291 to your computer and use it in GitHub Desktop.
Save robhanlon22/1207291 to your computer and use it in GitHub Desktop.
Clojure solution for TopCoder BinarySearchable problem
(ns binary-searchable)
(defn- check-pivot [sequence s index pivot]
(cond (< pivot s) (any-pivot (drop (+ index 1) sequence) s)
(> pivot s) (any-pivot (take index sequence) s)
:else true))
(defn- any-pivot [sequence s]
(if (not (empty? sequence))
(every? #(true? %) (map-indexed (partial check-pivot sequence s) sequence))))
(defn how-many [sequence]
(count (filter (partial any-pivot sequence) sequence)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment