Red de conocimiento informático - Material del sitio web - Programa de resolución de juegos Sudoku basado en SAT, encuentra código en lenguaje C

Programa de resolución de juegos Sudoku basado en SAT, encuentra código en lenguaje C

Utilice 0 para representar el número a completar

#include lt; stdio.hgt

#include stdlib.hgt; >

#define TAMAÑO 9

#define get_low_bit(x) ((~xamp; (x-1)) 1)

struct{

int izquierda;

char num;

char intentar;

}tablero[TAMAÑO][TAMAÑO];

int bit2num(int bit)

{

cambiar(bit){

caso 16:

caso 256:

regresar 9;

Solución básica

Método de exclusión (método de eliminación)

Método de eliminación: use números para encontrar el único espacio en blanco que se puede completar en la unidad, que se llama método de eliminación Los números se pueden completar. El único espacio se llama Hidden Single.

Según los diferentes ámbitos de acción, las soluciones ocultas se pueden dividir en los siguientes tres tipos:

El número puede llenar el único espacio en blanco en la unidad "Palacio", que es llamado Hidden Single in Box (Hidden Single in Box), también conocido como método de eliminación de palacio.

Los números que pueden llenar espacios únicos en la unidad "fila" se denominan Único Oculto en Fila, también conocido como eliminación de fila.