]> code.bitgloo.com Git - clyne/advent-of-code.git/commitdiff
day20: forgot to put into folder
authorClyne Sullivan <clyne@bitgloo.com>
Mon, 20 Dec 2021 17:24:12 +0000 (12:24 -0500)
committerClyne Sullivan <clyne@bitgloo.com>
Mon, 20 Dec 2021 17:24:12 +0000 (12:24 -0500)
day20/partboth.clj [new file with mode: 0644]
partboth.clj [deleted file]

diff --git a/day20/partboth.clj b/day20/partboth.clj
new file mode 100644 (file)
index 0000000..4e460ca
--- /dev/null
@@ -0,0 +1,44 @@
+(require '[clojure.string :as str])
+
+(defn pad-input-map [in-map pad-val]
+  (let [pad-row (repeat (+ 4 (count (first in-map))) pad-val)
+        pad-side (repeat 2 pad-val)]
+    (mapv vec
+      (concat
+        [pad-row pad-row]
+        (mapv #(concat pad-side % pad-side) in-map)
+        [pad-row pad-row]))))
+
+(defn get-number [in-map y x]
+  (concat (subvec (get in-map (dec y)) (dec x) (+ 2 x))
+          (subvec (get in-map y) (dec x) (+ 2 x))
+          (subvec (get in-map (inc y)) (dec x) (+ 2 x))))
+
+(defn get-new-pixel [enhance-algo in-map y x]
+  (->> (get-number in-map y x)
+       str/join
+       (#(Integer/parseInt % 2))
+       (get enhance-algo)
+       {\. 0 \# 1}))
+
+(defn build-output-number-map [enhance-algo in-map]
+  (let [pad-val (if (= \# (first enhance-algo)) (first (first in-map)) 0)
+        padded-in-map (pad-input-map in-map pad-val)]
+    (for [y (range 1 (dec (count padded-in-map)))]
+      (for [x (range 1 (dec (count (first padded-in-map))))]
+        (get-new-pixel enhance-algo padded-in-map y x)
+        ))))
+
+(defn count-lit-pixels [in-map]
+  ((frequencies (flatten in-map)) 1))
+
+(let [[enhance-algo in-map]
+      (->> (slurp "./in")
+           str/split-lines
+           ((juxt
+           first
+           (comp (partial mapv #(mapv {\. 0 \# 1} %))
+                 (partial drop 2)))))
+      image-output (iterate (partial build-output-number-map enhance-algo) in-map)]
+  (println (count-lit-pixels (nth image-output 50))))
+
diff --git a/partboth.clj b/partboth.clj
deleted file mode 100644 (file)
index 4e460ca..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-(require '[clojure.string :as str])
-
-(defn pad-input-map [in-map pad-val]
-  (let [pad-row (repeat (+ 4 (count (first in-map))) pad-val)
-        pad-side (repeat 2 pad-val)]
-    (mapv vec
-      (concat
-        [pad-row pad-row]
-        (mapv #(concat pad-side % pad-side) in-map)
-        [pad-row pad-row]))))
-
-(defn get-number [in-map y x]
-  (concat (subvec (get in-map (dec y)) (dec x) (+ 2 x))
-          (subvec (get in-map y) (dec x) (+ 2 x))
-          (subvec (get in-map (inc y)) (dec x) (+ 2 x))))
-
-(defn get-new-pixel [enhance-algo in-map y x]
-  (->> (get-number in-map y x)
-       str/join
-       (#(Integer/parseInt % 2))
-       (get enhance-algo)
-       {\. 0 \# 1}))
-
-(defn build-output-number-map [enhance-algo in-map]
-  (let [pad-val (if (= \# (first enhance-algo)) (first (first in-map)) 0)
-        padded-in-map (pad-input-map in-map pad-val)]
-    (for [y (range 1 (dec (count padded-in-map)))]
-      (for [x (range 1 (dec (count (first padded-in-map))))]
-        (get-new-pixel enhance-algo padded-in-map y x)
-        ))))
-
-(defn count-lit-pixels [in-map]
-  ((frequencies (flatten in-map)) 1))
-
-(let [[enhance-algo in-map]
-      (->> (slurp "./in")
-           str/split-lines
-           ((juxt
-           first
-           (comp (partial mapv #(mapv {\. 0 \# 1} %))
-                 (partial drop 2)))))
-      image-output (iterate (partial build-output-number-map enhance-algo) in-map)]
-  (println (count-lit-pixels (nth image-output 50))))
-