구글 코드잼은 구글에서 1년에 한번씩 개최하는 프로그래밍 대회입니다.
문제가 주어지고, 해결책을 구현한 코드와 입력에 대한 출력을 제출하면 결과가 기록되는 식으로 진행되요.
4월 13일 토요일부터 일요일 아침까지 구글 코드잼 예선전이 열렸습니다.
아래 페이지에 가시면 출제된 문제를 확인할 수 있고, 실제로 올려서 평가를 받아볼 수도 있습니다.
아래 페이지에 가보면 지난 문제들과 해결책, 다른 사람들의 코드도 볼 수 있어요.
구글에 대해 궁금하거나 입사할 생각이 있으신 분들은 한 번 들려보도록 해요. :)
아래 문제는 출제된 문제 중 하나입니다.
Tic-Tac-Toe-Tomek is a game played on a 4 x 4 square board. The board starts empty, except that a single 'T' symbol may appear in one of the 16 squares. There are two players: X and O. They take turns to make moves, with X starting. In each move a player puts her symbol in one of the empty squares. Player X's symbol is 'X', and player O's symbol is 'O'.
After a player's move, if there is a row, column or a diagonal containing 4 of that player's symbols, or containing 3 of her symbols and the 'T' symbol, she wins and the game ends. Otherwise the game continues with the other player's move. If all of the fields are filled with symbols and nobody won, the game ends in a draw. See the sample input for examples of various winning positions.
Given a 4 x 4 board description containing 'X', 'O', 'T' and '.' characters (where '.' represents an empty square), describing the current state of a game, determine the status of the Tic-Tac-Toe-Tomek game going on. The statuses to choose from are:
- "X won" (the game is over, and X won)
- "O won" (the game is over, and O won)
- "Draw" (the game is over, and it ended in a draw)
- "Game has not completed" (the game is not over yet)
The first line of the input gives the number of test cases, T. T test cases follow. Each test case consists of 4 lines with 4 characters each, with each character being 'X', 'O', '.' or 'T' (quotes for clarity only). Each test case is followed by an empty line.
For each test case, output one line containing "Case #x: y", where x is the case number (starting from 1) and y is one of the statuses given above. Make sure to get the statuses exactly right. When you run your code on the sample input, it should create the sample output exactly, including the "Case #1: ", the capital letter "O" rather than the number "0", and so on.
The game board provided will represent a valid state that was reached through play of the game Tic-Tac-Toe-Tomek as described above.
1 ≤ T ≤ 10.
1 ≤ T ≤ 1000.
Although your browser might not render an empty line after the last test case in the sample input, in a real input file there would be one.
아, 문제와 해결책에 대해서 자유롭게 이야기도 해보아요.