TicTacToe
Gra może być reprezentowany przez ciąg oznaczający kolejność pozycji jak gracze zrobić ich ruch.
0 1 2 3 4 5 6 7 8
Zakładaj, że X
zawsze gra pierwszy.
Więc ciąg „012345678” oznacza grę
XOX OXO XOX
Zauważ, że gra jest już wygrana, gdy gracz X
oznaczy 6
, w tym momencie gra się kończy, przyznając wygraną X
. (tzn. zignoruj pozostałe ruchy, gdy gracz wygra)
Wyzwaniem (kodem) jest wydrukowanie wszystkich gier (posortowana kolejność) i ich wyników.
Format
<movesequence>:<result>\n
na przykład:
012345678:X
012345687:X
012345768:X
...
Oznacz X
wygraną pierwszego gracza, O
drugiego gracza i D
losowania.
Będą 9!
(362880) gry.
Oto kilka danych umożliwiających sprawdzenie wyników.
'X' Wins: 212256
'O' Wins: 104544
Draws : 46080
To jest codegolf, a czas działania powinien być w ciągu minuty. Baw się dobrze!
EDYCJA: Usunąłem nadmiar szczegółów i po prostu wydrukowałem stdout
. Nie ma potrzeby tworzenia pliku.