Алак був винайдений математиком А. К. Дьюдней і описаний у своїй книзі "Планіверс" 1984 року. Правила Алака прості:
Alak - гра для двох гравців, що грається на одновимірній дошці з одинадцятьма слотами на ній. Кожен слот може вмістити не більше однієї штуки за один раз. Є два види творів, "х" та "о". x належать одному гравцеві, o - іншому. Початкова конфігурація плати:
xxxx___oooo
Гравці по черзі рухаються. На кожному кроці кожен гравець може один раз перемістити лише одну фігуру. Гравець не може пройти по черзі. Гравець може перемістити будь-яку свою частину до наступного незайнятого слота праворуч або ліворуч, що може спричинити стрибки через зайняті слоти. Гравець не може перемістити шматок збоку від дошки.
Якщо хода створює візерунок, коли шматки противника оточені, з обох боків, двома частинами кольору рушія (без втручаного порожнього прорізу), то ті оточені шматки видаляються з дошки.
Мета гри - вилучити всі шматки вашого опонента, в цей момент гра закінчується. Видалення всіх, окрім одного, також закінчує гру, оскільки противник не може оточити вас однією частиною, і тому завжди втратить протягом декількох ходів.
Я знайшов цю гру в Інтернеті і цікавився: чи можна це в гольф?
Правила гольфу
- Ваш код повинен дотримуватися всіх правил гри, поводження з захопленнями, правильне переміщення тощо (єдиний виняток - вам не потрібно додавати бота, але ви повинні мати обох гравців якось керованими, а один гравець повинен бути людиною).
- Вхід має бути переміщеним шматочком у плитці X на плитку Y або вийти з нього. Наприклад, ви можете
1 4
сказати "перемістити цей фрагмент у плитці 1 на плитку 4".quit
закінчилася б програма, хоча використання Control- Cбуло б прийнятним. Ви також повинні перевірити, чи переміщення недійсне (виїжджаючи за межі дошки або переміщаючи кудись, що вам доведеться перейти через незайняті місця, щоб дістатися до або надіслати повідомлення, яке не є парою плиток абоquit
). - Виходи для гравців - переможців і інваліду повинні бути
P1 WINS
,P2 WINS
іINVALID
, відповідно. (Все це 7 символів.) - Вихідні дані повинні показувати дошку. Це все, що потрібно.
- Не має значення, чи використовуєте ви такі засоби, як пронумерована плитка чи інші шматки.
Виклик закінчується, якщо:
- За одну відповідь набирається 50 голосів
- Одна відповідь залишається голосованою протягом 3 тижнів, а інших відповідей за цей час не було опубліковано
і виклик має щонайменше 3 відповіді (тож справжня конкуренція).
Правила гри
- Гравець зліва повинен почати першим.
- Лише одна деталь займає квадрат за один раз. Ви переміщуєте шматок вліво або вправо, поки він не потрапить на незайняте місце. Дошка не загортається, і ви не можете пересуватися по незайнятих місцях. Наприклад:
xoo__o
. Тутx
рухоме право змінило б дошку_oox_o
.xxooo_
. Тут найдалі лівийx
міг рухатись до врожаю_xooox
, який захоплюєo
s, залишаючи_x___x
.x__oox
. Тутo
s не зафіксовані (ще є розрив). Зйомка неможлива, оскільки ви не можете пересуватися через незайняті місця.x
Зліва може рухатися тільки одне місце, тому що немає ніяких інших частин між (виїзд_x_oox
).
- Кілька суміжних фігур можуть бути захоплені одразу, якщо група оточена шматками противника. Наприклад , від
x_oox
до_xoox
захопить якo
з і в результаті_x__x
. - Якщо після ходу ви спочатку захоплюєте шматки суперника , перш ніж перевірити, чи слід вилучити свій власний шматок. Візьміть два приклади:
o_oxx
доoxox_
. По-перше,o
захоплюється другийox_x_
, тому першийx
залишається на дошці.o_oox
доoxoo_
. Цього разу жодна зo
s не захоплена, томуx
натомість вона захоплена.- Якщо у вас є лише одна штука, гра закінчується, тому що ви не можете захопити лише одну частину.
Нехай починаються ігри! Я з нетерпінням чекаю, що ви придумаєте.