Given data from a partially completed game, the program finishes the game with both players' optimal moves and returns the winner.