fundo
Pule para "Tarefa" se você estiver familiarizado com o Tic-Tac-Toe (acho que a maioria está!)
Tic-Tac-Toe é um famoso jogo para dois jogadores. Consiste em um tabuleiro 3x3 que é preenchido gradualmente por dois jogadores (esclarecimentos abaixo); O primeiro jogador usa o personagem Xe o outro usa O. O vencedor é o primeiro a obter 3 caracteres consecutivos e idênticos ( Xou O), na horizontal, na vertical ou na diagonal. Caso o tabuleiro esteja cheio e nenhum dos jogadores tenha conseguido três personagens consecutivos, como descrito acima, o jogo termina em empate. Observe que pode haver vagas vazias no final do jogo, caso um dos jogadores ganhe menos de 9 jogadas no total (isso não pode acontecer em caso de empate).
Tarefa
Dado um tabuleiro Tic-Tac-Toe no final de um jogo (na forma de uma string, uma matriz, uma lista simples de 9 valores ordenados, qualquer outro formato decente), determine quem vence o jogo.
A entrada consistirá em valores distintos e consistentes , um para
X, um paraOe outro que representa um ponto vazio.Seu programa deve ser capaz de gerar 3 valores distintos, consistentes e não vazios: um no caso de
Xvitória, outro no caso deOvitória ou outro se os jogadores estiverem empatados.Especifique esses valores na sua resposta. Você pode assumir que a entrada será uma placa Tic-Tac-Toe válida.
Casos de teste
X, O, _São os valores de entrada aqui; X wins, O winsE Tiesão para a saída.
X O X
O X _
O _ X
Saída: X wins.
X _ O
X O _
X O X
Saída: X wins.
X O X
_ O X
_ O _
Saída: O wins.
X O X
O O X
X X O
Saída: Tie.
Como sempre, todas as nossas regras padrão se aplicam. Este é o código-golfe , o código mais curto em bytes em todos os idiomas vence!