#The Ultimate Tic-Tac-Toetm
Tic-Tac-Toe is boring. Let's code The Ultimate Tic-Tac-Toe, a whole different story.
###Uh, what?
- Each turn, you mark one of the small squares.
- When you get three in a row on a small board, you’ve won that board.
- To win the game, you need to win three small boards in a row.
You don’t get to pick which of the nine boards to play on. That’s determined by your opponent’s previous move. Whichever square he picks, that’s the board you must play in next. (And whichever square you pick will determine which board he plays on next.)
What if my opponent sends me to a board that’s already been won? In that case, congratulations – you get to go anywhere you like, on any of the other boards. (This means you should avoid sending your opponent to an already-won board!)
What if one of the small boards results in a tie? I recommend that the board counts for neither X nor O. But, if you feel like a crazy variant, you could agree before the game to count a tied board for both X and O.
http://mathwithbaddrawings.com/2013/06/16/ultimate-tic-tac-toe/
###Specs?
Implement a game that works as described above. Make it a console app, a windows app, a calculator app, a web app, save games and high scores on a cloud, do what you will.
Just keep it "reviewable".
Please tag entries with code-challengecommunity-challenge and game, as well as any other applicable tag(s); also include a link to this post: http://meta.codereview.stackexchange.com/a/1472/23788
.