diff options
author | sterni <sternenseemann@systemli.org> | 2022-12-13T13·56+0100 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2022-12-13T14·52+0000 |
commit | 8fda0544d7f7ab53f646b1a6d49057a547be3db2 (patch) | |
tree | 8e4134ecdd2a8edfed578ed335892563ab3043a5 /users/sterni/exercises/aoc/2022/13/13.bqn | |
parent | 4f1b55c27bebbbdca54233c003286a22c6e5c879 (diff) |
feat(sterni/aoc/2022): day13 BQN solution r/5416
Change-Id: I401ba09198d447628fa76d811fd4fe780baa8240 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7586 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
Diffstat (limited to 'users/sterni/exercises/aoc/2022/13/13.bqn')
-rw-r--r-- | users/sterni/exercises/aoc/2022/13/13.bqn | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/users/sterni/exercises/aoc/2022/13/13.bqn b/users/sterni/exercises/aoc/2022/13/13.bqn new file mode 100644 index 000000000000..0242cc5093a1 --- /dev/null +++ b/users/sterni/exercises/aoc/2022/13/13.bqn @@ -0,0 +1,14 @@ +lib ← •Import "../../lib.bqn" +str ← lib.ImportBqnLibs "strings.bqn" +i ← >⟨"[","]"⟩‿⟨"⟨","⟩"⟩⊸(•BQN str.ReplaceAll)¨¨0((⟨⟩⊸≡¨¯1˙⍟⊣¨(+`(=⟜≠)¨))⊔⊢)•FLines "input" + +Ord ← { + i1 𝕊 i2: 1‿1≡•Type¨ i1‿i2? ¯1‿1‿0⊑˜i1(=+≤)i2; + i1 𝕊 l2: 1‿0≡•Type¨ i1‿l2? l2 Ord˜ ⋈i1; + l1 𝕊 i2: 0‿1≡•Type¨ l1‿i2? l1 Ord ⋈i2; + l1 𝕊 l2: 0‿0≡•Type¨ l1‿l2? + ⊑1↑0(≠/⊢)l1 Ord¨○((l1⌈○≠l2)⊸(↑⌾(+⟜1))) l2 +} + +•Out "day13.1: "∾•Fmt +´1+/(1⊸=Ord´)˘i +•Out "day13.2: "∾•Fmt ×´1‿2++´˘¯1=⟨⟨2⟩⟩‿⟨⟨6⟩⟩Ord⌜⥊i |