about summary refs log tree commit diff
path: root/day03.clj
diff options
context:
space:
mode:
authorLeah Neukirchen <leah@vuxu.org>2020-12-04 12:38:16 +0100
committerLeah Neukirchen <leah@vuxu.org>2020-12-04 12:38:16 +0100
commitd20125b66e35d3380e4e39c4a75fbb6604b6cc00 (patch)
treea47dbfe6cf429db38b30f9a11a6b610058ceaa77 /day03.clj
parenta804cd7bdf6cf1557cca4656eeca678925059358 (diff)
downloadadventofcode2020-d20125b66e35d3380e4e39c4a75fbb6604b6cc00.tar.gz
adventofcode2020-d20125b66e35d3380e4e39c4a75fbb6604b6cc00.tar.xz
adventofcode2020-d20125b66e35d3380e4e39c4a75fbb6604b6cc00.zip
day03
Diffstat (limited to 'day03.clj')
-rw-r--r--day03.clj15
1 files changed, 15 insertions, 0 deletions
diff --git a/day03.clj b/day03.clj
new file mode 100644
index 0000000..16981d1
--- /dev/null
+++ b/day03.clj
@@ -0,0 +1,15 @@
+(def data
+  (->> (slurp "day03")
+       (clojure.string/split-lines))
+
+(defn slop [step]
+  (->> (range)
+       (map #(mapv (partial * %) step))
+       (take-while #(< (first %) (count data)))
+       (map (fn [[x y]]
+              (nth (cycle (nth data x)) y)))
+       (filter #{\#})
+       (count)))
+
+(slop [1 3]) ; => 270
+(apply * (map slop [[1 1] [1 3] [1 5] [1 7] [2 1]])) ; => 2122848000