1. Scan board for UNKN cells.2. Build candidate mask.3. If single candidate → fill cell.4. Repeat until no progress flag set.
If unresolved cells remain:• Select cell with minimum candidate count.• Push frame with remaining candidates.• Attempt candidates depth-first.
• On failure, pop frame.• Restore previous state.• Try next candidate.• Continue until solved or stack empty.