How about Algorithm X [0]? Fundamentally it is still a backtracking algorithm but it allows efficiently updating the solver state.[0]: <a href="https://en.wikipedia.org/wiki/Knuth%27s_Algorithm_X" rel="nofollow">https://en.wikipedia.org/wiki/Knuth%27s_Algorithm_X
qbane · · focus · HN ↗
[0]: <a href="https://en.wikipedia.org/wiki/Knuth%27s_Algorithm_X" rel="nofollow">https://en.wikipedia.org/wiki/Knuth%27s_Algorithm_X