Evaluate the board. Returns: 0 if no winner yet, 1 or 2 for the winner, -1 if tie.
(board: np.ndarray)
| 66 | |
| 67 | |
| 68 | def evaluate(board: np.ndarray) -> int: |
| 69 | """ |
| 70 | Evaluate the board. |
| 71 | |
| 72 | Returns: |
| 73 | 0 if no winner yet, |
| 74 | 1 or 2 for the winner, |
| 75 | -1 if tie. |
| 76 | """ |
| 77 | for player in [1, 2]: |
| 78 | if row_win(board, player) or col_win(board, player) or diag_win(board, player): |
| 79 | return player |
| 80 | if np.all(board != 0): |
| 81 | return -1 |
| 82 | return 0 |
| 83 | |
| 84 | |
| 85 | def play_game() -> int: |