玩家必须在棋盘上找到最多10个单词(最困难的情况)。字母必须互相接触(在周围的8个方格内)。当找到一个单词时,它会被移除,重力会使上面的块填充空隙(字母永远不会水平移动)。单词可以在任何顺序中找到,当棋盘空的时候,游戏就结束了。示例(7X7,8个单词):C E F S C R ET R N A R R CA E E A E A H
R R C
就我所理解的这个问题而言,它是图G的顶点子集,因此每个边至少有一个端点在子集中。这个问题被认为是NP完全的。然而,对于这个问题,我认为存在一个多项式时间贪婪解。要么我误解了这个问题,要么我的解不是多项式时间。请访问下面的链接,以图表解释的12个实例,代码以相同的顺序执行所有的12个实例。图中用绿色标记的节点是子集中的顶点。图表问题Vertex Cover Problem - Greedy approach for finding
我不得不写SML代码来解决回溯中骑士的巡视问题。棋手必须在整个棋盘上奔跑(大小:NxN),并且必须恰好访问每个方块一次(不需要在结束时返回第一个方块)。我已经写了所有的函数来创建一个空棋盘,设置或获取棋盘中的方块,获得可能的骑士下一步动作的列表。但是我不知道如何用SML编写递归函数(我知道如何用C语言编写这个算法,但不知道用SML)。8x8棋盘的C语言算法
dl and dr are array : (delta to calcula