Dumb Quartiles Solver
This is a web service written in Go that takes 20 “tiles” between two and four letters long and finds all the words that can be made with between one and four tiles.
The word list is not the same as the one Apple News Quartiles uses, and so this will typically generate a lot of words that Quartiles does not recognize. Occasionally, it will also fail to generate a word that Quartiles is expecting.
There are a lot of combinations of 4 taken from 20, so key to this algorithm is early pruning. The algorithm keeps a slice of the word list in sorted order, and uses a binary search to find the first and last word in the list with a given prefix. If there are no words, the algorithm does not recurse.