3 #ifndef PROGRESS_EFFECT5X3D_H 4 #define PROGRESS_EFFECT5X3D_H 43 assert(progress >= 0);
44 const int rank = progress / 8 - 16;
53 assert(progress >= 0);
54 const int rank = progress / 8 - 8;
69 return progress16(progresses[0] + progresses[1]);
static int makeProgress(Player defense, const NumEffectState &state, Square king)
王の位置を指定したprogressの計算.
int max(Player p, int v1, int v2)
玉の周囲5x3の領域の利きの数ら計算した自玉のまわりの利きの数。 5x3領域は盤面内になるように補正する. ...
int min(Player p, int v1, int v2)
static const Progress16 progress16each(int progress)
0-15 の値を返す.
const Progress16 progress16() const
ProgressN< 16 > Progress16
Effect5x3d(const NumEffectState &state)
Square kingSquare() const
void update(const NumEffectState &new_state, Move last_move)
int progress(Player p) const
static int makeProgress(const NumEffectState &state)
static const Progress16 progress16(int progress)
0-15 の値を返す
static int makeProgress(Player defense, const NumEffectState &state)
CArray< int, 2 > progresses
const Progress16 progress16(Player p) const