diff --git a/aoc.bqn b/aoc.bqn index c2d0006..9ee3e24 100644 --- a/aoc.bqn +++ b/aoc.bqn @@ -2,10 +2,13 @@ Sub ⇐ {a‿b𝕊𝕩:b↑a↓𝕩} # e Split xs: split xs on occurrences of e (default 0) -Split ⇐ {Sub⟜𝕩¨ ((1+») ⋈¨ ⊢-») /(𝕨⊣0)=𝕩} +Split ⇐ {(⊏ ∾ 1⊸↓¨∘(1⊸↓)) Sub⟜𝕩¨ (» ⋈¨ ⊢-») /𝕨=𝕩∾(𝕨⊣⟜0↩)} -Day1 ⇐ { - sums ← ∨+´¨ Split •BQN⎊0¨ •FLines 𝕩 - ⟨⊑sums, +´3↑sums⟩ +Day1 ⇐ (⊑ ⋈ (+´3⊸↑))∘(∨+´¨)∘Split∘(•BQN⎊0¨)∘•FLines + +Day2 ⇐ { + Line ← -⟜"AX"∘∾ ' '⊸Split + B ← ⊣ (A ← {1+𝕩+3×3|1+𝕩-𝕨}) {3|𝕨+𝕩-1} + +´˘⍉ (A≍B)´∘Line˘ >•FLines 𝕩 } -•Show Day1 ⊑•args +# •Show Day2 ⊑•args