Skip to content

Instantly share code, notes, and snippets.

@ray1729
Created November 8, 2011 22:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ray1729/1349435 to your computer and use it in GitHub Desktop.
Save ray1729/1349435 to your computer and use it in GitHub Desktop.
How many ways can we roll 10 dice and have all the digits 1-6 appear at least once?
(defn factorial [n] (reduce * (range 1 (inc n))))
(defn multinomial [n & ms]
(/ (factorial n) (reduce * (map factorial ms))))
(def N (reduce + (for [m1 (range 1 6)
m2 (range 1 (- 7 m1))
m3 (range 1 (- 8 m1 m2))
m4 (range 1 (- 9 m1 m2 m3))
m5 (range 1 (- 10 m1 m2 m3 m4))
:let [m6 (- 10 m1 m2 m3 m4 m5)]]
(multinomial 10 m1 m2 m3 m4 m5 m6))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment