Alak由数学家AK Dewdney发明,并在1984年的著作Planiverse中进行了描述。Alak的规则很简单:
Alak是在具有11个插槽的一维板上玩的两人游戏。每个插槽一次最多只能容纳一个。有两种,“ x”和“ o”。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
可以移动到yield_xooox
,它捕获o
s,离开_x___x
。x__oox
。在此,o
不捕获s(仍然存在间隙)。无法捕获,因为您无法在闲置空间中移动。在x
左侧只能移动一分格,因为没有其他部分之间(离开_x_oox
)。
- 如果组被对手的棋子包围,则可以一次捕获多个相邻棋子。例如,从
x_oox
至_xoox
将同时捕获o
s和_x__x
。 - 如果在移动之后,首先要捕获对手的棋子,然后再检查是否应删除自己的棋子。举两个例子:
o_oxx
到oxox_
。首先,o
捕获第二个ox_x_
,因此第一个x
保留在板上。o_oox
到oxoo_
。这次,没有o
捕获到,因此x
捕获了。- 如果只有一件,则游戏结束,因为您不能仅凭一件就捕捉到。
让游戏开始!我期待看到您的想法。