Фон
Перейдите к «Задаче», если вы знакомы с Крестики-нолики (я думаю, что большинство из них!)
Tic-Tac-Toe - известная игра для двух игроков. Он состоит из доски 3х3, которая постепенно заполняется двумя игроками (пояснения ниже); Первый игрок использует персонажа, X
а другой использует O
. Победитель первым получает 3 последовательных и одинаковых символа ( X
или O
) по горизонтали, вертикали или диагонали. Если доска заполнена и ни одному из игроков не удалось получить трех последовательных персонажей, как описано выше, игра заканчивается ничьей. Обратите внимание, что в конце игры могут быть пустые места, если один из игроков выиграет менее чем за 9 ходов (это не может произойти в случае ничьей).
задача
По заданной доске Tic-Tac-Toe в конце игры (в виде строки, матрицы, простого списка из 9 упорядоченных значений в любом другом приличном формате) определите, кто победит в игре.
Входные данные будут состоять из отдельных и непротиворечивых значений, одного для
X
, одного дляO
и другого, которое представляет пустое место.Ваша программа должна иметь возможность выводить 3 различных, непротиворечивых и непустых значения: одно в случае
X
выигрыша, другое в случаеO
выигрыша или другое, если игроки связаны.Пожалуйста, укажите эти значения в своем ответе. Вы можете предположить, что ввод будет действительной платой Tic-Tac-Toe.
Тестовые случаи
X
, O
, _
Являются входными значениями здесь; X wins
, O wins
И Tie
предназначены для выхода.
X O X
O X _
O _ X
Выход: X wins
.
X _ O
X O _
X O X
Выход: X wins
.
X O X
_ O X
_ O _
Выход: O wins
.
X O X
O O X
X X O
Выход: Tie
.
Как обычно, применяются все наши стандартные правила. Это код-гольф , выигрывает самый короткий код в байтах на каждом языке!