10 #ifndef SUDOKU_GRUPO_H
11 #define SUDOKU_GRUPO_H
Fichero cabecera del TDA Casilla.
TDA Casilla Representa una única posición de sudoku que puede contener un único valor numérico.
Definition: Casilla.h:29
TDA Grupo Representa los conjuntos contiguos de celdas marcados con línea discontinua en un Sudoku Ki...
Definition: Grupo.h:37
void limp_comb_en_col(const Casilla &cas)
Limpia todas las combinaciones de la columna que contengan el dígito de la casilla cas.
bool InCol() const
Informa sobre si el grupo está enteramente contenido en una columna.
bool InCubo() const
Informa sobre si el grupo está enteramente contenido en un cubo.
int getSuma() const
Recupera la suma asociada al grupo.
void limp_comb_en_fila(const Casilla &cas)
Limpia todas las combinaciones de la fila que contengan el dígito de la casilla cas.
const vector< Casilla > & getCasillas() const
Recupera las casillas de grupo.
void limp_comb_no_en_col(const Casilla &cas)
Limpia todas las posiciones que tengan al dígito de cas en una casilla en la col en la que se encuent...
bool esta_en_el_borde(const Casilla &cas)
Controla si cierta casilla del grupo está en el borde de éste (puede eliminarse sin desconectar el gr...
int CuantasFuera_cubo(const Casilla &cubo) const
Devuelve cuántas casillas se quedan fuera de "cubo".
const vector< vector< vector< int > > > & getCombinaciones() const
Recupera las combinaciones posibles del grupo (basadas en el instante del tablero)
void setCombinaciones(const vector< vector< vector< int >>> &comb)
Fija las combinaciones posibles del grupo (basadas en el instante del tablero)
int CuantasFuera_col(const Casilla &col) const
Devuelve cuántas casillas se quedan fuera de "col".
const vector< Casilla > & obtener_determinados() const
Obtiene las casillas totalmente determinadas por un proceso de eliminación de posiciones....
void limp_comb_en_cubo(const Casilla &cas)
Limpia todas las combinaciones del cubo que contengan el dígito de la casilla cas.
void quitar_casilla(const Casilla &cas)
Se ejecutará al escribir una casilla para quitarla del grupo Esto tiene como propósito ir simplifican...
int suma
Suma de los valores de las casillas del grupo.
Definition: Grupo.h:43
void setSuma(int sum)
Fija la suma asociada al grupo.
void rellena_comb_y_pos()
Rellena las todas las posibles sumas del grupo con cada una de sus posiciones posibles.
int CuantasFuera_fila(const Casilla &fila) const
Devuelve cuántas casillas se quedan fuera de "fila".
void limp_comb_no_en_fila(const Casilla &cas)
Limpia todas las posiciones que tengan al dígito de cas en una casilla en la fila en la que se encuen...
void setCasillas(const vector< Casilla > &cas)
Fija las casillas de grupo.
vector< vector< vector< int > > > combinaciones
Vector de matrices, donde cada matriz representa una combinación y dentro de esa matriz cada columna ...
Definition: Grupo.h:64
void limp_comb_no_en_cubo(const Casilla &cas)
Limpia todas las posiciones que tengan al dígito de cas en una casilla en el cubo en la que se encuen...
bool InFila() const
Informa sobre si el grupo está enteramente contenido en una fila.
vector< Casilla > grupo
Array de casillas que tiene el grupo.
Definition: Grupo.h:50