#include "solver.hpp" void Solver::generate_set(vector carry) { if(carry.size() == N) { possible.push_back(carry); return; } for(int col = 0; col < M; col++) { carry.push_back(col); generate_set(carry); carry.pop_back(); } } Solver::Solver(int _N, int _M) : N(_N), M(_M) { generate_set({}); } // TODO vector Solver::guess() { return {}; } // TODO void Solver::learn(vector guess, Response response) { } // TODO int Solver::get_weight(vector guess) { return 0; } // TODO Weighed_guess Solver::minimax(vector> *possibilities, vector *chosen, int index) { return {0, {}}; }