tangled
alpha
login
or
join now
m1emi1em.dev
/
aoc2025
1
fork
atom
this repo has no description
1
fork
atom
overview
issues
pulls
pipelines
(D3P2): Solution
m1emi1em.dev
3 months ago
ec2bc31d
373566c2
+7
-4
1 changed file
expand all
collapse all
unified
split
src
aoc2025
day3.clj
+7
-4
src/aoc2025/day3.clj
···
14
14
15
15
(defn- grab-biggest
16
16
([bank] (grab-biggest 1 [] bank))
17
17
+
([padding bank] (grab-biggest padding [] bank))
17
18
([padding found bank]
18
19
(let [indexed-bank (util/minv bank)
19
20
[index-biggest value-biggest] (->> indexed-bank (drop-last padding) (reduce indexed-preserving-max))]
···
23
24
(conj found value-biggest)
24
25
(drop (inc index-biggest) bank))))))
25
26
26
26
-
(defn- part1 [banks]
27
27
+
(defn- generic-part-wrapper [banks battery-count]
27
28
(->> banks
28
28
-
(map (comp util/gluen #(trampoline grab-biggest %)))
29
29
+
(map (comp util/gluen #(trampoline grab-biggest battery-count %)))
29
30
(reduce +)))
30
31
32
32
+
(defn- part1 [banks] (generic-part-wrapper banks 1))
33
33
+
(defn- part2 [banks] (generic-part-wrapper banks 11))
34
34
+
31
35
(defn solve
32
36
([] (solve "03.txt"))
33
37
([fname]
34
34
-
(->> (parse-file fname) part1)))
38
38
+
(->> (parse-file fname) ((juxt part1 part2)))))
35
39
36
40
(solve "03-test.txt")
37
37
-
(solve)