From: Ben Harris Date: Sat, 11 May 2024 10:53:52 +0000 (+0100) Subject: 11a: faster Inspect copied back from 11b X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~bjharris/git?a=commitdiff_plain;h=61abb2141cf37bbb078d01c835ab29b068c20e9c;p=aoc-2022.git 11a: faster Inspect copied back from 11b --- diff --git a/11/11a.bqn b/11/11a.bqn index 0b50b4d..909674b 100644 --- a/11/11a.bqn +++ b/11/11a.bqn @@ -8,22 +8,21 @@ Split←{ Monkey←{𝕊desc: items←{𝕩∊", "}⊸Split(18↓1⊑desc) items↩•ParseFloat¨(⟨⟩⊸≢¨items)/items - op←' '⊸=⊸Split 19↓2⊑desc + inspect←{ + 𝕊⟨"old","*","old"⟩:{𝕩×𝕩}; + 𝕊⟨"old","*",n⟩ :{𝕩וParseFloat n}; + 𝕊⟨"old","+",n⟩ :{𝕩+•ParseFloat n} + }' '⊸=⊸Split 19↓2⊑desc divisor←•ParseFloat 21↓3⊑desc iftrue ←•ParseFloat 29↓4⊑desc iffalse←•ParseFloat 30↓5⊑desc count⇐0 Catch⇐{items∾↩⟨𝕩⟩} - Inspect←{ - ⟨"old","*","old"⟩𝕊old:old×old; - ⟨"old","*",n⟩ 𝕊old:oldוParseFloat n; - ⟨"old","+",n⟩ 𝕊old:old+•ParseFloat n - } Relieve←{⌊𝕩÷3} Turn⇐{𝕤 {𝕊i: count+↩1 - i↩Relieve op Inspect i + i↩Relieve Inspect i (((0=divisor|i)⊑⟨iffalse,iftrue⟩)⊑monkeys).Catch i }¨items items↩⟨⟩