lemon41625 wrote: ↑April 10th, 2024, 10:49 pm
If I'm not wrong, zfind is able to search for knightships. Does anyone know how the gfind search space is modified in order to allow for these searches?
I was working on implementing oblique / diagonal searches for cfind (unfortunately oblique searches don't work yet), so I'm curious to see how this is implemented in zfind.
It wasn't particularly clever. When your partial result contains rows A, B, and X, and you're searching for row C such that
Code: Select all
AAAA evolves into
BBBB ---------------> XXXX
CCCC
just shift row X horizontally by one cell before searching for row C.
As discussed above, I made some mistake in implementing LookAhead() with the horizontal shift. Ultimately, zfind's width limitations meant that this feature was mostly useless anyway, so I removed it. Other programs like ikpx2, LSSS, LLSSS, and even gfind are better. As LaundryPizza03 mentioned above, you're probably better off looking at Paul Tooke's modification of gfind, rather than whatever I wrote for zfind. I think it's the same basic idea.