I don’t usually take part in the Perl Weekly Challenge but one of this week’s challenges caught my eye. I thought it could be a fun thing to attempt and decided to use Zydeco to help solve it.
The problem is that you’re given a matrix of 0s and 1s:
You need to find any squares (equal length sides) where all four corners are 1s:
Arguably it’s not a task best suited for object-oriented programming; a more functional style might suit the problem better, but this is how I did it.
Sample output:
Found size 2 square at 1, 2. Found size 3 square at 1, 6. Found size 2 square at 2, 1. Found size 1 square at 3, 1. Found 4 squares.