TicTacToe
Игра может быть представлена в виде строки , обозначающее последовательность позиций , как игроки делают свой ход.
0 1 2 3 4 5 6 7 8
Предположим, X
всегда играет первым.
Таким образом, строка «012345678» обозначает игру
XOX OXO XOX
Обратите внимание, что игра уже выиграна, когда игрок X
отмечает 6
, в этот момент игра заканчивается, предоставляя выигрыш X
. (т.е. игнорировать оставшиеся ходы, как только игрок выигрывает)
Ваша задача (код) - распечатать все игры (отсортированный порядок) и их результаты.
Формат
<movesequence>:<result>\n
например:
012345678:X
012345687:X
012345768:X
...
Обозначим X
выигрыш первого игрока, O
второго игрока и D
ничьи.
Будет 9!
(362880) игр.
Вот некоторые данные, чтобы проверить ваши результаты.
'X' Wins: 212256
'O' Wins: 104544
Draws : 46080
Это Codegolf, и время выполнения должно быть в течение минуты. Веселиться!
РЕДАКТИРОВАТЬ: Удалил лишние детали и просто распечатать его stdout
. Нет необходимости создавать файл.