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 X
e o outro usa O
. O vencedor é o primeiro a obter 3 caracteres consecutivos e idênticos ( X
ou 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 paraO
e 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
X
vitória, outro no caso deO
vitó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 wins
E Tie
sã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!