Un TicTacToejuego puede ser representado por una cadena que denota la secuencia de posiciones a medida que los jugadores hacen su movimiento.
0 1 2 3 4 5 6 7 8
Suponga que Xsiempre juega primero.
Entonces una cadena de "012345678" denota el juego
XOX OXO XOX
Tenga en cuenta que el juego ya está ganado cuando el jugador Xmarca 6, en ese punto el juego termina, otorgando una victoria a X. (es decir, ignorar los movimientos restantes una vez que un jugador gana)
Su desafío (código) es imprimir todos los juegos (orden ordenado) y sus resultados.
El formato
<movesequence>:<result>\n
p.ej:
012345678:X
012345687:X
012345768:X
...
Denota Xpara el primer jugador ganador, Opara el segundo jugador y Dpara los sorteos.
Habrá 9!(362880) juegos.
Aquí hay algunos datos para verificar sus resultados.
'X' Wins: 212256
'O' Wins: 104544
Draws : 46080
Este es un codegolf, y el tiempo de ejecución debe ser dentro de un minuto. ¡Que te diviertas!
EDITAR: eliminó el exceso de detalles e imprímalo stdout. No es necesario crear un archivo.