From 1f5cc1cf5e8ab562fc9e08dff93adfdac0425785 Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 2 Dec 2024 01:21:38 -0500 Subject: [PATCH] refactor --- 2024/src/core.clj | 10 +++++++++- 2024/src/day01.clj | 5 ++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/2024/src/core.clj b/2024/src/core.clj index 6a13f39..3cb2a07 100644 --- a/2024/src/core.clj +++ b/2024/src/core.clj @@ -1,4 +1,12 @@ -(ns core) +(ns core + (:require + [clojure.string :as str])) (defn compose [& fs] (apply comp (reverse fs))) + +(defn split-whitespace [s] + (str/split s #"\s+")) + +(defn get-match-groups [regex s] + (->> s (re-seq regex) first rest)) diff --git a/2024/src/day01.clj b/2024/src/day01.clj index f586999..ec2d445 100644 --- a/2024/src/day01.clj +++ b/2024/src/day01.clj @@ -4,9 +4,8 @@ [core :as c])) (def input (->> (get-input 1) - (map (c/compose #(re-seq #"(\d+)\s+(\d+)" %) - first rest ; only get match groups - #(mapv parse-long %))) + (map #(c/get-match-groups #"(\d+)\s+(\d+)" %)) + (map #(mapv parse-long %)) (into {}) ((juxt keys vals))))