]> code.bitgloo.com Git - clyne/advent-of-code.git/commitdiff
day8: make part1 concise
authorClyne Sullivan <clyne@bitgloo.com>
Wed, 8 Dec 2021 16:07:53 +0000 (11:07 -0500)
committerClyne Sullivan <clyne@bitgloo.com>
Wed, 8 Dec 2021 16:07:53 +0000 (11:07 -0500)
day8/part1.clj

index 6c8cd0fba1298160d6f48f3f729915770ff92756..fe06fdff604d61b0621ba32cd3bacdce6a557c7c 100644 (file)
@@ -1,28 +1,15 @@
 (require '[clojure.string :as str])
 
-(loop [sum 0]
-  (let [line (read-line)]
-    (if (empty? line)
-      (println sum)
-      (recur
-        (+
-         sum
-         (reduce
-           #(let [c (count %2)]
-              (if (or (= 2 c) (= 3 c) (= 4 c) (= 7 c))
-                (inc %1)
-                %1
-                )
-             )
-           0
-           (subvec
-             (mapv (comp str/join sort) (str/split line #" "))
-             11 15
-             )
-           )
-         )
-        )
-      )
-    )
-  )
+(->> (str/split-lines (slurp "./in"))
+     (map
+       (fn [line]
+         (as-> line $
+           (str/split $ #" ")
+           (subvec $ 11 15)
+           (filter #(.contains [2 3 4 7] (count %)) $)
+           (count $)
+           )))
+     (apply +)
+     (println)
+     )