From 4e8f554286593ec8aca6c61fa0fb9c4934bd640c Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Fri, 13 Jul 2018 17:06:48 -0400 Subject: Redesigned the solver algorithm The new solver algorithm decreases the size of the search space by combining states. A flood fill is used to find all of the positions accessible by the player without changing the board state, and that flood is considered a node in the search graph, rather than there being a node for every position on every board state. Other optimizations are implemented too, like checking for changes locally instead of using tick, and using unordered_map/unordered_set because bitsets are hashable. Also changed wrap to use references, finally. refs #1 --- util.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'util.h') diff --git a/util.h b/util.h index 365a759..0e1fa2e 100644 --- a/util.h +++ b/util.h @@ -5,7 +5,7 @@ #ifndef UTIL_H #define UTIL_H -void wrap(int* x, int* y); +void wrap(int& x, int& y); TTF_Font* loadFont(int size); const char* getDataFile(); SDL_Texture* loadImage(SDL_Renderer* renderer, std::string file); -- cgit 1.4.1