连线

连线

困难

说明

计算一局 Hex / Polygon 游戏的结果。

这种抽象棋类游戏名为 Hex / Polygon / CON-TAC-TIX,规则相当简单,实际玩起来却很复杂。 两名玩家在一个由六边形格子组成的平行四边形上放置棋子。 先把自己一方的棋子连到对边的一方获胜。 平行四边形的四条边由两名玩家平分(也就是说,一名玩家分到一条边以及和它正对的那条边,另一名玩家分到剩下的两条边)。

你的目标是编写一个程序,给定棋盘的一种简单表示,计算出获胜者(或者没有获胜者)。 注意,并非每局游戏都“公平”。 (例如,双方棋子数量可能不相等,或者棋盘的宽和高可能不一样。)

棋盘看起来像这样:

. O . X .
 . X X O .
  O O O X .
   . X O X O
    X O O O X

“玩家 O”从上往下走,“玩家 X”从左往右走。 在上面的例子中,O 从左到右连成了一条线,但没有人获胜,因为 O 没有把上下两边连起来。

通过 GitHub 编辑 链接将在新窗口或新标签页中打开
Standard ML Exercism

准备好开始 连线 了吗?

注册 Exercism,借助 90 个练习 和真人导师指导,学习并掌握 Standard ML,全部免费。