hey
ive written a program in python
it hasnt yet failed to my knowlege
if u want to take a look at the strategies send ur email id
there are only 2 main strategies i applied
1. list of possiblities for each block and elimination based on row col and box
(not only elimination of order 1 list but for higher order as well for eg if [1] appears in a box all 1's in the corresponding row col and box need to be eliminated similarly if [1,3] and [1,3] are the only possibilities for 2 boxes in the same row col or box then all other [1,3]'s need to be removed from other lists along same row /col/box
2. check along row / col /box for the only chance for the occurance of a number for eg if [1,3,7] are the possibilities for a box and in no other box along r/c/b has 1 then eliminate 3 and 7 and reapply strategy 1 again
i guess u may not fully understand the method
u may need to look at the code to see what i mean