diff options
Diffstat (limited to 'c++/core/mcts.h')
-rw-r--r-- | c++/core/mcts.h | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/c++/core/mcts.h b/c++/core/mcts.h deleted file mode 100644 index 8a8f5ea..0000000 --- a/c++/core/mcts.h +++ /dev/null @@ -1,52 +0,0 @@ -#pragma once - -#include "tree.h" - -namespace saw { -template<typename T> -class mcts_tree { -private: - struct value { - uint64_t numerater; - uint64_t denominater; - T state; - - value() = default; - value(T st): - numerater{0}, - denominater{0}, - state{std::move(st)} - {} - }; - - tree_container<value, mcts_tree<T>> data_; -public: - mcts_tree() = default{ - data_.add(value{}); - } - - mcts_tree(T state){ - data_.add(value{std::move(state)}); - } - - size_t size() const { - return data_.size() - 1; - } - - T& get_state(){ - return data_.at(0).get_value().state; - } - - const T& get_state() const { - return data_.at(0).get_value().state; - } - - mcts_tree<T>& get_tree(size_t i){ - return data_.at(i+1).get_tree(); - } - - const mcts_tree<T>& get_tree(size_t i) const { - return data_.at(i+1).get_tree(); - } -}; -} |