day7: learn as->

master
Clyne 3 years ago
parent ec649250aa
commit 803b9b677f

@ -1,22 +1,19 @@
(defn calc-fuel [lst pos]
(->> lst
(map
(comp
#(/ (* % (inc %)) 2)
#(Math/abs %)
(partial - pos)
(reduce #(as-> %2 $
(- pos $)
(Math/abs $)
(/ (* $ (inc $)) 2)
(+ %1 $)
)
)
(apply +)
0 lst
)
)
(let [input (->> (slurp "./in") ;"16,1,2,0,4,2,7,1,2,14"
(#(clojure.string/split % #","))
(map read-string)
(let [input (as-> (slurp "./in") $ ;"16,1,2,0,4,2,7,1,2,14"
(clojure.string/split $ #",")
(map read-string $)
)
mean (quot (apply + input) (count input))
]
mean (quot (apply + input) (count input))]
(println (min (calc-fuel input mean)
(calc-fuel input (inc mean))))
)

Loading…
Cancel
Save