Hintergrund
Springe zu "Aufgabe", wenn du mit Tic-Tac-Toe vertraut bist (ich denke, die meisten sind es!)
Tic-Tac-Toe ist ein berühmtes Spiel für zwei Spieler. Es besteht aus einem 3x3- Brett, das nach und nach von zwei Spielern besetzt wird (Erläuterungen unten). Der erste Spieler benutzt den Charakter X
und der andere den O
. Der Gewinner ist der erste, der 3 aufeinanderfolgende und identische Zeichen ( X
oder O
) erhält , entweder horizontal, vertikal oder diagonal. Wenn das Spielfeld voll ist und keiner der Spieler drei aufeinanderfolgende Charaktere hat, wie oben beschrieben, endet das Spiel unentschieden. Beachten Sie, dass am Ende des Spiels möglicherweise leere Stellen vorhanden sind, falls einer der Spieler in weniger als 9 Zügen insgesamt gewinnt (dies ist bei einem Unentschieden nicht möglich).
Aufgabe
Mit einem Tic-Tac-Toe-Brett am Ende eines Spiels (in Form einer Zeichenfolge, einer Matrix, einer flachen Liste mit 9 geordneten Werten, einem beliebigen anderen anständigen Format) bestimmen Sie, wer das Spiel gewinnt.
Die Eingabe besteht aus unterschiedlichen und konsistenten Werten, einem für
X
, einem fürO
und einem anderen, die eine leere Stelle darstellen.Ihr Programm sollte in der Lage sein, 3 verschiedene, konsistente und nicht leere Werte auszugeben: einen für den Fall eines
X
Sieges, einen für den Fall einesO
Sieges oder einen anderen, wenn die Spieler unentschieden sind.Bitte geben Sie diese Werte in Ihrer Antwort an. Sie können davon ausgehen, dass der Eingang eine gültige Tic-Tac-Toe-Karte ist.
Testfälle
X
, O
, _
Sind die Eingangswerte hier; X wins
, O wins
Und Tie
sind für die Ausgabe.
X O X
O X _
O _ X
Ausgang: X wins
.
X _ O
X O _
X O X
Ausgang: X wins
.
X O X
_ O X
_ O _
Ausgang: O wins
.
X O X
O O X
X X O
Ausgang: Tie
.
Es gelten wie immer alle unsere Standardregeln. Das ist Code-Golf , der kürzeste Code in Bytes in jeder Sprache gewinnt!