Richard Park reviews submissions from the 2019 APL Problem Solving Competition. Problems reviewed include counting mines in minesweeper, simple cryptography, data cleaning and solving a Boggle board.
In the Grille problem (14:30) we see two approaches to conditionally selecting elements from arrays ([] square bracket indexing and ,/ compress and ravel). In the minesweeper (CountMines) problem (17:50), Richard discusses different approaches to stencil codes in APL. The polybius square (TapEnc and TapDec) solutions (23:10) demonstrate clever uses of ⊤ (encode) and Jamin Wu's invertible solution using ⍣¯1 (power negative one). In the data cleaning (Merge) problem (28:35), we see the difference between symmetric and non-symmetric (commutative and non-commutative) solutions. Two different solutions to the Boggle problem (35:00) illustrate different graph traversal algorithms, one iterative and one which uses transitive closure.
LINKS
=====
[ Ссылка ]
[ Ссылка ]
[ Ссылка ]
![](https://i.ytimg.com/vi/NDJTco8vQbs/maxresdefault.jpg)