Todos os desafios
Médio 0 resolvidos 0% de aceitação

Tic-Tac-Toe Winner

Decide the result of a tic-tac-toe board.

Problema

A 3×3 board is given as three strings of X, O and . (empty). A player wins with three of their marks in a row, column or diagonal. Boards never have two winners.

Implement tic_tac_toe_winner(board).

Input

board: Three rows of three characters each.

Output

Return "X" or "O" for the winner, "Draw" if the board is full with no winner, or "Pending" if empty cells remain and nobody has won.

Restrições

board has exactly 3 rows of length 3

Exemplos

Exemplo 1
Entrada:
board = ["XOX", ".X.", "O.X"]

Saída esperada:
expected = "X"
Entrada:
std::vector<std::string> board = {"XOX", ".X.", "O.X"};

Saída esperada:
std::string expected = "X";
Entrada:
string[] board = new string[] {"XOX", ".X.", "O.X"};

Saída esperada:
string expected = "X";

Explicação

X holds the diagonal from top-left to bottom-right, so X wins.

Exemplo 2
Entrada:
board = ["XOX", "XOO", "OXX"]

Saída esperada:
expected = "Draw"
Entrada:
std::vector<std::string> board = {"XOX", "XOO", "OXX"};

Saída esperada:
std::string expected = "Draw";
Entrada:
string[] board = new string[] {"XOX", "XOO", "OXX"};

Saída esperada:
string expected = "Draw";

Explicação

The board is full and no line has three of a kind: Draw.

Referências

Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.

Aprenda com outros

Soluções da comunidade

Ainda não há soluções publicadas. Resolva este desafio para compartilhar a primeira.