Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
12
Task/Pascals-triangle/Clojure/pascals-triangle-1.clj
Normal file
12
Task/Pascals-triangle/Clojure/pascals-triangle-1.clj
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
(defn pascal [n]
|
||||
(let [newrow (fn newrow [lst ret]
|
||||
(if lst
|
||||
(recur (rest lst)
|
||||
(conj ret (+ (first lst) (or (second lst) 0))))
|
||||
ret))
|
||||
genrow (fn genrow [n lst]
|
||||
(when (< 0 n)
|
||||
(do (println lst)
|
||||
(recur (dec n) (conj (newrow lst []) 1)))))]
|
||||
(genrow n [1])))
|
||||
(pascal 4)
|
||||
8
Task/Pascals-triangle/Clojure/pascals-triangle-2.clj
Normal file
8
Task/Pascals-triangle/Clojure/pascals-triangle-2.clj
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
(defn nextrow [row]
|
||||
(vec (concat [1] (map #(apply + %) (partition 2 1 row)) [1] )))
|
||||
|
||||
(defn pascal [n]
|
||||
(assert (and (integer? n) (pos? n)))
|
||||
(let [triangle (take n (iterate nextrow [1]))]
|
||||
(doseq [row triangle]
|
||||
(println row))))
|
||||
7
Task/Pascals-triangle/Clojure/pascals-triangle-3.clj
Normal file
7
Task/Pascals-triangle/Clojure/pascals-triangle-3.clj
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
(def pascal
|
||||
(iterate
|
||||
(fn [prev-row]
|
||||
(->>
|
||||
(concat [[(first prev-row)]] (partition 2 1 prev-row) [[(last prev-row)]])
|
||||
(map (partial apply +) ,,,)))
|
||||
[1]))
|
||||
5
Task/Pascals-triangle/Clojure/pascals-triangle-4.clj
Normal file
5
Task/Pascals-triangle/Clojure/pascals-triangle-4.clj
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
(def pascal
|
||||
(iterate #(concat [1]
|
||||
(map + % (rest %))
|
||||
[1])
|
||||
[1]))
|
||||
1
Task/Pascals-triangle/Clojure/pascals-triangle-5.clj
Normal file
1
Task/Pascals-triangle/Clojure/pascals-triangle-5.clj
Normal file
|
|
@ -0,0 +1 @@
|
|||
(take 10 pascal) ; returns a list of the first 10 pascal rows
|
||||
1
Task/Pascals-triangle/Clojure/pascals-triangle-6.clj
Normal file
1
Task/Pascals-triangle/Clojure/pascals-triangle-6.clj
Normal file
|
|
@ -0,0 +1 @@
|
|||
(nth pascal 10) ;returns the nth row
|
||||
Loading…
Add table
Add a link
Reference in a new issue