diff --git a/p12.dyalog b/p12.dyalog index 628fb95..03ea228 100644 --- a/p12.dyalog +++ b/p12.dyalog @@ -4,5 +4,5 @@ u←5↑¨2↓p ⋄ v←⊃∘⌽¨2↓p ⍝ patterns and replacements f←{v[u⍳5,/4⌽⍵,⍨8/0]} ⍝ next generation g←{+/(⍸⍵)-0.5×(≢⍵)-≢s} ⍝ score function g f⍣20⊢s ⍝ part 1 -t←f⍣{≡/(⊢-⌊/)∘⍸¨⍺⍵}s ⍝ iterate until pattern stabilises -(g t)+((g f t)-g t)×50E9-0.25×(≢t)-≢s ⍝ part 2 +z←g t←f⍣{≡/(⍸-⍳∘1)¨⍺⍵}s ⍝ iterate until pattern stabilises +z+(z-g f t)ׯ50E9+4÷⍨(≢t)-≢s ⍝ part 2