我试图写一个算法,通过计算所有可能的棋子(只有国王和车)的位置,找到最快的对决方式,然后根据最短的棋子数来决定下一步。在
我在理解如何使用python生成器来实现这一点时遇到了一些问题。我的问题是生成器和yield关键字的正确使用吗?
这是我的简短密码
play(maxMoves, gameBoard):
while not checkmate and gamemoves is less than maxmoves:
if whitesturn:
legalmoves= all legal white moves
for x in legalmoves:
testBoard=deepcopy of board
testboard. makemove(x)
movesItTook=play_Gen(10,testBoard)
if(movesItTook is less than previous best)...this is our new bestmove
play_Gen(maxMoves, gameBoard):
while gameboard is not checkmate and gamemoves is less than maxmoves:
if whitesturn:
legalmoves= all legal white moves
for somemove in legalmoves:
testBoard=deepcopy of board
testboard. makemove(somemove)
if(checkmate)
yield gameBoard.turncount
目前没有回答
相关问题 更多 >
编程相关推荐