Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,16 @@
|
|||
(defn digits-seq
|
||||
"Returns a seq of the digits of a number (L->R)."
|
||||
[n]
|
||||
(loop [digits (), number n]
|
||||
(if (zero? number) (seq digits)
|
||||
(recur (cons (mod number 10) digits)
|
||||
(quot number 10)))))
|
||||
|
||||
(defn join-digits
|
||||
"Converts a digits-seq back in to a number."
|
||||
[ds]
|
||||
(reduce (fn [n d] (+ (* 10 n) d)) ds))
|
||||
|
||||
(defn look-and-say [n]
|
||||
(->> n digits-seq (partition-by identity)
|
||||
(mapcat (juxt count first)) join-digits))
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
user> (take 8 (iterate look-and-say 1))
|
||||
(1 11 21 1211 111221 312211 13112221 1113213211)
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
(defn look-and-say
|
||||
[n]
|
||||
(->> (re-seq #"(.)\1*" n)
|
||||
(mapcat (comp (juxt count first) first))
|
||||
(apply str)))
|
||||
|
||||
(take 12 (iterate look-and-say "1"))
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
("1"
|
||||
"11"
|
||||
"21"
|
||||
"1211"
|
||||
"111221"
|
||||
"312211"
|
||||
"13112221"
|
||||
"1113213211"
|
||||
"31131211131221"
|
||||
"13211311123113112211"
|
||||
"11131221133112132113212221"
|
||||
"3113112221232112111312211312113211")
|
||||
Loading…
Add table
Add a link
Reference in a new issue