Contexte
Passez à "Tâche" si vous connaissez Tic-Tac-Toe (je pense que la plupart le sont!)
Tic-Tac-Toe est un célèbre jeu à deux joueurs. Il se compose d'un plateau 3x3 qui est rempli progressivement par deux joueurs (précisions ci-dessous); Le premier joueur utilise le personnage Xet l'autre utilise O. Le gagnant est le premier à obtenir 3 caractères consécutifs et identiques ( Xou O), horizontalement, verticalement ou en diagonale. Dans le cas où le plateau est rempli et qu'aucun des joueurs n'a réussi à obtenir trois personnages consécutifs comme décrit ci-dessus, le jeu se termine par une égalité. Notez qu'il peut y avoir des places vides à la fin de la partie, dans le cas où l'un des joueurs gagne en moins de 9 coups au total (cela ne peut pas se produire en cas d'égalité).
Tâche
Étant donné un tableau Tic-Tac-Toe à la fin d'une partie (sous la forme d'une chaîne, d'une matrice, d'une liste plate de 9 valeurs ordonnées, de tout autre format décent), déterminez qui gagne la partie.
L'entrée sera constituée de valeurs distinctes et cohérentes , une pour
X, une pourOet une autre qui représente un emplacement vide.Votre programme devrait être capable de produire 3 valeurs distinctes, cohérentes et non vides: une au cas où il
Xgagne, une autre au cas où ilOgagne ou une autre si les joueurs sont à égalité.Veuillez spécifier ces valeurs dans votre réponse. Vous pouvez supposer que l'entrée sera une carte Tic-Tac-Toe valide.
Cas de test
X, O, _Sont les valeurs d'entrée ici; X wins, O winsEt Tiesont pour la sortie.
X O X
O X _
O _ X
Sortie: X wins.
X _ O
X O _
X O X
Sortie: X wins.
X O X
_ O X
_ O _
Sortie: O wins.
X O X
O O X
X X O
Sortie: Tie.
Comme d'habitude, toutes nos règles standard s'appliquent. C'est le code-golf , le code le plus court en octets dans toutes les langues gagne!