04.apl
1 input ← ⊃⎕NGET '../.cache/2021/4' 1 2 nums ← ⍎¨','(≠⊆⊢)⊃input 3 boards ← {{⍎¨' '(≠⊆⊢)⍵}¨¨({0≠≢⍵}¨⍵)⊆⍵}2↓input 4 ⎕ ← {i b←⍵⋄w←{({∨/(∧/¯1=⊢)¨⍵,↓⍉↑⍵}¨⍵)/⍵}b⋄0<≢w:((i-1)⊃nums)×+/(∊⊃w)~¯1⋄∇(1+i)({⍵=(i⊃nums):¯1⋄⍵}¨¨¨b)}1 boards 5 ⎕ ← {i b←⍵⋄w←{({∨/(∧/¯1=⊢)¨⍵,↓⍉↑⍵}¨⍵)/⍵}b⋄(0<≢w)∧1=≢b:((i-1)⊃nums)×+/(∊⊃w)~¯1⋄∇(1+i)({⍵=(i⊃nums):¯1⋄⍵}¨¨¨b~w)}1 boards