Порядок и Хаос - это вариант игры в крестики-нолики, играемый на доске 6х6. Однако уникальность игры заключается в том, что оба игрока могут поставить X или O! Каждый ход (начиная с Порядка) игрок помещает X или O в любой незанятый квадрат.
Победа проста. Орден выигрывает, если на доске 5 рядов X или Os (вертикально, горизонтально или по диагонали). Хаос побеждает, если доска заполнена и на ней нет строк по 5 X или Os. Твоя работа? Ну, так как это программирование головоломок и Code Golf, вы собираетесь программировать игру и играть в гольф.
Правила
- Вы должны принять ввод как
x y t
, гдеx
иy
являются координатами, аt
также тип плитки (X
илиO
). Координаты начинаются с0 0
левого верхнего угла и увеличиваются до5 5
(правый нижний угол). - Вы должны согласиться
q
выйти и печатать,INVALID
если пользователь вводит недопустимые координаты, фрагменты, любые входные данные не в формеx y t
или пытается разместить фрагмент там, где он уже есть. (Единственное исключение -q
выход из программы.) - Если ордер выиграет, вы выйдете
P1 WINS
. Если Хаос победит, вы будете выходитьP2 WINS
. - Заказ должен идти первым.
- Пустое пространство представлено
.
. - Плитка есть
X
иO
(заглавная). Вы не должны принимать строчные буквы, но прописные буквы обязательны. - Ваша доска должна состоять только из
.XO
. - Вы фактически симулируете обоих игроков, играющих в игру, а не получаете доску и проверяете, кто победит. Он принимает ход как ввод, затем печатает доску, принимает другой ход и так далее, пока один из игроков не выиграет.
Стартовая доска выглядит так:
......
......
......
......
......
......
И после ввода первого игрока (Order) 1 2 X
это должно выглядеть так:
......
......
.X....
......
......
......
Аналогично, когда следующий игрок (Хаос) вводит данные 3 3 O
, это будет выглядеть так:
......
......
.X....
...O..
......
......
И это продолжается до тех пор, пока один из игроков не выиграет.
Как всегда, стандартные лазейки, которые извлекают удовольствие из всего , запрещены.
Победителем становится тот, у кого самый короткий код 15 июня, 00:00 UTC (примерно через месяц с момента публикации этого вызова).
INVALID
. Я редактировал это сейчас, спасибо.