diff options
Diffstat (limited to 'src/aoc_2022/day06.clj')
| -rw-r--r-- | src/aoc_2022/day06.clj | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/aoc_2022/day06.clj b/src/aoc_2022/day06.clj new file mode 100644 index 0000000..227c6fd --- /dev/null +++ b/src/aoc_2022/day06.clj @@ -0,0 +1,21 @@ +(ns aoc-2022.day06) +(require '[aoc-2022.utils :refer :all]) + +(defn process + ([n cs] (process n 0 (list) cs)) + ([n idx acc [c & cs]] + (if (= n (count (distinct acc))) + idx + (process n (inc idx) (take n (cons c acc)) cs)))) + +(defn task1 [rows] + (->> rows + first + (process 4))) + +(defn task2 [rows] + (->> rows + first + (process 14))) + +(run-aoc "day06" task1 task2) |
