王手されてるかの確認が遅いんだな
れさぴょん方式だと利きの有無を確認するコストが低いんだけど、bitboard だと割高なのだな… なぜ bonanza が あのように書かれているのか、だんだんわかってきた。
Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 25.87 154.64 154.64 1291742355 0.00 0.00 int Board::hisAttacked<(Player)1>(int, BitBoard&) 19.45 270.87 116.23 1536674587 0.00 0.00 Board::MakeMove(Move) 19.09 384.99 114.13 1536674501 0.00 0.00 Board::UnMakeMove(Move) 7.52 429.96 44.97 349007614 0.00 0.00 int Board::hisAttacked<(Player)0>(int, BitBoard&) 6.20 467.01 37.04 273593660 0.00 0.00 int Think::hSearch<(Player)1>(Tree*, int, int, int, int, int) 3.44 487.55 20.54 1248266458 0.00 0.00 int Think::hSearch<(Player)0>(Tree*, int, int, int, int, int) 2.87 504.70 17.15 1549987907 0.00 0.00 Think::GenNext(Player, Tree*) 2.59 520.15 15.45 83050843 0.00 0.00 hash_get0(unsigned long) 2.17 533.13 12.98 2090635261 0.00 0.00 Board::Hand(Player, Piece) 2.15 545.96 12.83 1637356682 0.00 0.00 Board::isAttacked(Player, int) 1.12 552.65 6.69 10094827 0.00 0.00 Move* Board::hGenDrop<(Player)1>(Move*)