Base class for Sudoku puzzles. More...
Public Types | |
enum | { MODEL_INT , MODEL_SET , MODEL_MIXED } |
Model variants. More... | |
enum | { BRANCH_NONE , BRANCH_SIZE , BRANCH_SIZE_DEGREE , BRANCH_SIZE_AFC , BRANCH_AFC } |
Public Member Functions | |
Sudoku (const SizeOptions &opt) | |
Constructor. | |
Sudoku (Sudoku &s) | |
Constructor for cloning s. | |
Sudoku (const SizeOptions &opt) | |
Constructor. | |
Sudoku (Sudoku &s) | |
Constructor for cloning s. | |
virtual Space * | copy (void) |
Perform copying during cloning. | |
virtual void | print (std::ostream &os) const |
Print solution. | |
Public Member Functions inherited from Gecode::Driver::ScriptBase< Driver::IgnoreStepOption< Space > > | |
ScriptBase (const Options &opt) | |
Constructor. | |
ScriptBase (ScriptBase &e) | |
Constructor used for cloning. | |
virtual void | compare (const Space &home, std::ostream &os) const |
Compare with s. | |
Public Member Functions inherited from Gecode::Driver::IgnoreStepOption< BaseSpace > | |
IgnoreStepOption (const Options &) | |
Constructor. | |
IgnoreStepOption (BaseSpace &e) | |
Constructor used for cloning. |
Protected Attributes | |
const int | n |
The size of the problem. | |
IntVarArray | x |
Values for the fields. |
Related Symbols | |
(Note that these are not member symbols.) | |
int | main (int argc, char *argv[]) |
Main-function. |
Sudoku specifications | |
Each specification gives the initial positions that are filled in, with blank squares represented as zeroes. | |
const char * | examples [] |
The specifications. | |
const unsigned int | n_examples = sizeof(examples)/sizeof(char*) |
The number of instances. | |
int | example_size (const char *s) |
The size of an instance. | |
int | sudokuField (const char *s, int n, int i, int j) |
Return value at position (i,j) in the example s of size n. |
Additional Inherited Members | |
Static Public Member Functions inherited from Gecode::Driver::ScriptBase< Driver::IgnoreStepOption< Space > > | |
static std::ostream & | select_ostream (const char *sn, std::ofstream &ofs) |
Choose output stream according to sn. | |
static void | run (const Options &opt, Script *s=NULL) |
Base class for Sudoku puzzles.
Example: Solving Sudoku puzzles using integer constraints
Definition at line 55 of file sudoku-advanced.cpp.
anonymous enum |
Model variants.
Enumerator | |
---|---|
MODEL_INT | Use integer constraints. |
MODEL_SET | Use set constraints. |
MODEL_MIXED | Use both integer and set constraints. |
Definition at line 62 of file sudoku-advanced.cpp.
anonymous enum |
Enumerator | |
---|---|
BRANCH_NONE | Use lexicographic ordering. |
BRANCH_SIZE | Use minimum size. |
BRANCH_SIZE_DEGREE | Use minimum size over degree. |
BRANCH_SIZE_AFC | Use minimum size over afc. |
BRANCH_AFC | Use maximum afc. |
Definition at line 69 of file sudoku-advanced.cpp.
|
inline |
Constructor.
Definition at line 78 of file sudoku-advanced.cpp.
|
inline |
Constructor for cloning s.
Definition at line 83 of file sudoku-advanced.cpp.
|
inline |
Constructor.
Definition at line 64 of file sudoku.cpp.
|
inline |
Constructor for cloning s.
Definition at line 95 of file sudoku.cpp.
|
inlinevirtual |
Perform copying during cloning.
Reimplemented in SudokuInt, SudokuMixed, and SudokuSet.
Definition at line 101 of file sudoku.cpp.
|
inlinevirtual |
Print solution.
Reimplemented from Gecode::Driver::ScriptBase< Driver::IgnoreStepOption< Space > >.
Reimplemented in SudokuInt, SudokuMixed, and SudokuSet.
Definition at line 107 of file sudoku.cpp.
|
The specifications.
Definition at line 54 of file sudoku-instances.hh.
|
The number of instances.
Definition at line 1849 of file sudoku-instances.hh.
|
Main-function.
Definition at line 405 of file sudoku-advanced.cpp.
|
The size of an instance.
Definition at line 1852 of file sudoku-instances.hh.
|
Return value at position (i,j) in the example s of size n.
Definition at line 1860 of file sudoku-instances.hh.
|
protected |
The size of the problem.
Definition at line 58 of file sudoku-advanced.cpp.
|
protected |
Values for the fields.
Definition at line 60 of file sudoku.cpp.