> I believe if you change the representation of puzzles from [(pos,range)]
> to an Array, you'll get a significant speedup
>>> yet because I only recently removed a logic bug that slowed down the
>>> search instead of speading it up; ..). so the more interesting bit is
>>> that our solvers disagree on which are the most difficult puzzles
>>> (requiring the largest number of guesses):
>>>>>> df
>>> puzzles involving guesses: 5319
>> If that's not a typo, I'm baffled. My original needed to guess in 5309
>> Rot! Typo in _my_ previous message, 5319 is correct.
>
After posting my cleaned up dancing links solver, I went back to my logical
solver. I sent the 36628 line sudoku17 puzzle through it and it could solve
31322 of the puzzles, leaving 5306 resistant. I haven't check my algorithms
against your code, but it does not seem like I do any spectacularly more clever.
I don't have any time to clean up my code, but I may try turning off some steps
to see if one of them gives my the same 5319 number you are seeing.
--
Chris Kuklewicz