Alak은 수학자 AK Dewdney에 의해 발명되었으며 그의 1984 년 책 Planiverse에 설명되어 있습니다. Alak의 규칙은 간단합니다.
Alak은 11 개의 슬롯이있는 1 차원 보드에서 재생되는 2 인용 게임입니다. 각 슬롯은 한 번에 최대 하나의 부품을 수용 할 수 있습니다. "x"와 "o"의 두 가지 조각이 있습니다. x는 한 선수에게, o는 다른 선수에게 속합니다. 보드의 초기 구성은 다음과 같습니다.
xxxx___oooo
플레이어는 교대로 움직입니다. 매 턴마다 각 플레이어는 한 조각 만 움직일 수 있습니다. 플레이어는 자신의 차례를 넘길 수 없습니다. 플레이어는 자신의 조각 중 하나를 다음 비어있는 슬롯으로 오른쪽 또는 왼쪽으로 이동할 수 있으며,이 경우 점유 된 슬롯 위로 점프 할 수 있습니다. 플레이어는 보드 측면에서 조각을 이동할 수 없습니다.
움직임으로 상대방의 조각이 양쪽에 움직이는 두 가지 색으로 둘러싸여있는 패턴을 만들면 (빈 슬롯이없는 상태) 보드에서 제거 된 조각이 제거됩니다.
게임의 목표는 게임이 끝나는 시점에서 상대방의 모든 조각을 제거하는 것입니다. 상대를 한 조각으로 감쌀 수 없기 때문에 모든 것을 제거하면 게임도 끝납니다.
이 게임을 온라인에서 찾았으며 궁금한 점이 있습니다. 골프를 탈 수 있습니까?
골프의 규칙
- 코드는 게임의 모든 규칙, 캡처 처리, 적절한 이동 등을 따라야합니다. 봇을 추가 할 필요는 없지만 두 플레이어가 어떻게 든 제어해야하며 한 플레이어는 사람이어야합니다.
- 입력은 타일 X에서 타일 Y로 이동하거나 종료해야합니다. 예를 들어
1 4
'타일 1에서이 조각을 타일 4로 이동'을 말하는 데 사용할 수 있습니다 . -quit
사용하는 것이 허용 되지만 프로그램을 종료합니다 . 또한 이동이 유효하지 않은지 확인해야합니다 (보드 외부로 나가거나 비어있는 공간을 넘어서 타일 쌍이나 아닌 메시지를 보내거나 보내야하는 곳으로 이동 ).ControlCquit
- 경력 선수 무효에 대한 출력은해야합니다
P1 WINS
,P2 WINS
그리고INVALID
각각. (모두 7 자입니다.) - 출력은 보드를 보여 주어야합니다. 그게 전부입니다.
- 번호가 매겨진 타일이나 다른 조각과 같은 보조 도구를 사용하더라도 중요하지 않습니다.
다음과 같은 경우 도전이 끝납니다.
- 하나의 답변은 50 표를 얻습니다
- 하나의 답변이 3 주 동안 가장 많이 투표 된 상태로 남아 있으며 그 때 다른 답변은 게시되지 않았습니다.
도전에는 3 가지 이상의 답변이 있습니다 (따라서 실제 경쟁이 있습니다).
게임의 규칙
- 왼쪽 플레이어가 먼저 시작해야합니다.
- 한 번에 한 조각 만 사각형을 차지합니다. 빈 공간에 닿을 때까지 조각을 왼쪽이나 오른쪽으로 움직입니다. 보드는 랩핑되지 않으며 빈 공간을 이동할 수 없습니다. 예를 들면 다음과 같습니다.
xoo__o
. 여기서x
오른쪽으로 이동하면 보드가로 바뀝니다_oox_o
.xxooo_
. 여기에서 가장 왼쪽x
이 yield로 이동_xooox
하여을 캡처하고을 (를o
) 남깁니다_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
대신 s 가 캡처됩니다.- 한 조각 만 가지고 있으면 한 조각만으로 캡처 할 수 없으므로 게임이 종료됩니다.
게임을 시작하자! 나는 당신이 무엇을 보게되기를 기대합니다.