def calc_nodes(state, level, player, opponent): ''' Расчет количества сгенерированных узлов - state - начальное состояние - level - максимальная глубина рекрсии (количество полуходов) - player - игрок - opponent - оппонент ''' # global nodes # nodes = 0 # обнуляем статистику # вызываем метод NegMax _, _, nodes = bestmove(state, level, player, opponent) return nodes
def test_bestmove(): from nim import state_nim # начальное состояние (пустое) s = state_nim("1") # на два хода (на четыре полухода) вперед level = 4 # первым ходит "X", вторым - "0" player, opponent = "1", state_nim.opponent["1"] # получаем лучший ход move, _, nodes = bestmove(s, level, player, opponent) print(f"Best move is: {move}") print(f"Node count {nodes}")
def test_bestmove(): from cop_thug import state_ct # начальное состояние (пустое) s = state_ct() # на два хода (на четыре полухода) вперед level = 4 # первым ходит "X", вторым - "0" player, opponent = 'C', 'T' # получаем лучший ход move, _, nodes = bestmove(s, level, player, opponent) print(f"Best move is: {move}") print(f"Node count {nodes}")