diff options
| author | jbzdarkid <jbzdarkid@gmail.com> | 2019-11-09 13:39:10 -0800 |
|---|---|---|
| committer | jbzdarkid <jbzdarkid@gmail.com> | 2019-11-09 13:39:10 -0800 |
| commit | 36be1ed32ac9a554f0b11fcc13b5699e717b81f2 (patch) | |
| tree | 383618d781bc5b4701b31555f90b8a629fe6d205 /Source/Validator.h | |
| parent | 413e1f0aaae961660781675158e38520126c11b6 (diff) | |
| download | witness-tutorializer-36be1ed32ac9a554f0b11fcc13b5699e717b81f2.tar.gz witness-tutorializer-36be1ed32ac9a554f0b11fcc13b5699e717b81f2.tar.bz2 witness-tutorializer-36be1ed32ac9a554f0b11fcc13b5699e717b81f2.zip | |
Functioning solver/validator (at least for mazes)
Diffstat (limited to 'Source/Validator.h')
| -rw-r--r-- | Source/Validator.h | 27 |
1 files changed, 27 insertions, 0 deletions
| diff --git a/Source/Validator.h b/Source/Validator.h new file mode 100644 index 0000000..cddc293 --- /dev/null +++ b/Source/Validator.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | #pragma once | ||
| 2 | #include <vector> | ||
| 3 | #include <tuple> | ||
| 4 | |||
| 5 | #ifndef NEGATIONS_CANCEL_NEGATIONS | ||
| 6 | #define NEGATIONS_CANCEL_NEGATIONS true | ||
| 7 | #endif | ||
| 8 | |||
| 9 | #ifndef SIMPLE_POLYOMINOS | ||
| 10 | #define SIMPLE_POLYOMINOS true | ||
| 11 | #endif | ||
| 12 | |||
| 13 | #ifndef DISABLE_CACHE | ||
| 14 | #define DISABLE_CACHE false | ||
| 15 | #endif | ||
| 16 | |||
| 17 | struct Region{}; | ||
| 18 | struct Puzzle; | ||
| 19 | struct Pos; | ||
| 20 | class Validator { | ||
| 21 | public: | ||
| 22 | static void Validate(Puzzle& p); | ||
| 23 | |||
| 24 | private: | ||
| 25 | static void RegionCheckNegations(Puzzle& p, const Region& r); | ||
| 26 | static std::vector<Pos> RegionCheck(Puzzle& p, const Region& r); | ||
| 27 | }; | ||
