aboutsummaryrefslogtreecommitdiff
path: root/src/solver.hpp
diff options
context:
space:
mode:
authorFranciszek Malinka <franciszek.malinka@gmail.com>2022-04-25 00:30:06 +0200
committerFranciszek Malinka <franciszek.malinka@gmail.com>2022-04-25 00:30:06 +0200
commit5001e89f399dbd74dab054743f95c752b6f04bc6 (patch)
tree11c44bf8de00856bf6f139e57873a165e6d6625a /src/solver.hpp
parentd1a5218935ed0007832c85150d5697e1e1d8513e (diff)
Working algorithm, its faster tan light!
Diffstat (limited to 'src/solver.hpp')
-rw-r--r--src/solver.hpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/solver.hpp b/src/solver.hpp
index 8c51b56..a41152e 100644
--- a/src/solver.hpp
+++ b/src/solver.hpp
@@ -5,15 +5,21 @@
#include "cube.h"
+typedef int32_t heur_t;
+
class Solver {
private:
kh_cube_t *pruning_table;
kh_cube_t *visited_states;
void generate_pruning_table(uint32_t depth);
+ std::vector<rotations> retrieve_solution(cube_t cube);
+ std::vector<rotations> get_solve_pruning(cube_t cube);
public:
+ heur_t heuristic(const cube_t cube, const uint16_t moves_cnt);
Solver(uint32_t pruning_tab_depth=0);
- std::vector<rotations> solve(cube_t *cube);
+ ~Solver();
+ std::vector<rotations> solve(const cube_t cube);
};
#endif /* _ALGO_HPP_ */