18 void show(std::ostream& os,
int name_width,
const range_t& range,
19 const std::vector<double>& weights)
const
21 showAll(os, name_width, range, weights);
25 const int progress8 = env.
progress.value()/2;
29 index = std::min(12, 7 + (see - 51) / 200);
31 index = std::max(0, (see + 1250) / 200);
35 for (
size_t i=0; i<
see_range.size()-1; ++i) {
44 return index*8+progress8;
56 void show(std::ostream& os,
int name_width,
const range_t& range,
57 const std::vector<double>& weights)
const
59 showAll(os, name_width, range, weights);
71 for (
int p=0; p<8; ++p)
74 void show(std::ostream& os,
int name_width,
const range_t& range,
75 const std::vector<double>& weights)
const
77 showAll(os, name_width, range, weights);
81 if (! (*
this)[0].match(state, move, env))
83 const int progress8 = env.
progress.value()/2;
91 void show(std::ostream& os,
int name_width,
const range_t& range,
92 const std::vector<double>& weights)
const
94 showTopN(os, name_width, range, weights, 3);
112 const int progress8 = env.
progress.value()/2;
113 return index*8 + progress8;
Ptype capturePtype() const
bool isNormal() const
INVALID でも PASS でもない.
bool hasLastMove(size_t last=1) const
const Move lastMove(size_t last=1) const
int findMatch(const NumEffectState &state, Move move, const RatingEnv &env) const
bool effectiveInCheck() const
std::vector< int > see_range
void show(std::ostream &os, int name_width, const range_t &range, const std::vector< double > &weights) const
static int see(const NumEffectState &state, Move move, const RatingEnv &env)
mutually exclusive set of features
void showAll(std::ostream &os, int name_width, const range_t &range, const std::vector< double > &weights) const
void showTopN(std::ostream &os, int name_width, const range_t &range, const std::vector< double > &weights, int n) const
std::pair< int, int > range_t
Ptype unpromote(Ptype ptype)
ptypeがpromote後の型の時に,promote前の型を返す. promoteしていない型の時はそのまま返す
static int count2(const NumEffectState &, Square target, Player attack)
target に attack の影利きを二つまで数える.
int findMatch(const NumEffectState &state, Move move, const RatingEnv &env) const
void show(std::ostream &os, int name_width, const range_t &range, const std::vector< double > &weights) const
int findMatchWithoutProgress(Move move, const RatingEnv &env) const
void show(std::ostream &os, int name_width, const range_t &range, const std::vector< double > &weights) const
int findMatch(const NumEffectState &, Move move, const RatingEnv &env) const
int findMatch(const NumEffectState &state, Move move, const RatingEnv &) const
void show(std::ostream &os, int name_width, const range_t &range, const std::vector< double > &weights) const