『浅塘』游戏解题器

『浅塘』游戏

苹果 App Store 有个很好玩的益智游戏,叫『浅塘』。

IMG_6341-w325

画风优美,玩起来也比较考验智力。

玩法有点像华容道,要想办法移开其他的长条形木块,最后让红色的木块出去就算过关。

一开始玩了100多关,很轻松就过去了,感觉自己挺厉害的。于是想看看再玩多少关才能通关。结果发现……

这游戏丧心病狂的有 1098 关!!!

319708D8EADAE6886D27D6CC9BDD5018-w325

写算法解谜题

想了想这个游戏作者肯定不是人工去设置的关卡,应该是用程序自动生成的关卡。

我们让红色木块脱困其实也是人脑在做宽度优先遍历,那么其实我可以写一个宽搜,寻找最快『脱困』的方案。

但是对于每个关卡的输入数据怎么输入呢?因为对图像处理不熟,而且最近在研究 iOS 开发,学了些 swift。想了想干脆写个 iOS app,用手指把谜题画出来,然后让程序自动算解法,再把解法动态显示出来。

成品

花了一整天用 swift 写宽搜,简直累死,以前用 c 写算法很顺畅,这次用新学的语言踩了不少坑。

好在终于写完了,源码过段时间有空就传 github

谜题:

例如下面这个视频,智商不够用,127关过不去啦!

解题:

开始把谜题画出来,画完点『完成』,最优解法瞬间就计算出来了。

是不是很有意思?学了多年深藏不露的宽搜终于有一天也派上用场了,哇哈哈哈哈。