文章标签 ‘游戏’
最近流行一种游戏,叫做“数独”,英文叫Sudoku,听着应该是从日本那边过来的。我曾经做过几个,发现这个东西如果纯粹用眼睛和大脑来解决确实有很大的难度。但是如果你加上纸和笔,那么难度就会降低95%,而如果你借助于更先进的Excell,那么难度就会降低99%。我最终的结论就是,这个东西是个体力劳动。 如果有人还没有接触过数独,那这里就来大概介绍一下:数独应该算是一种九宫格游戏。他是由3*3个九宫格组成的一个大正方形。要求你在9*9个格子里面分别填入适当的1..9的数字,然后让每一行,每一列中的9个数字都包含1..9。另外,每个九宫格中也要包含1..9。下图就是一个数独。 我曾经和LP说过,这个东西实在变态,是一个纯粹的浪费时间的东西。我就异常后悔曾经花了几个人时去做数独。不过,这个月买了《新知客》后,遇到了更变态的事情,那就是,它变态到附赠了一个增刊,其中有28个数独。而且说:“空前震撼!28道数独让你过足瘾!”。更过分的是,其中有些数独本身就是错的(比如,一个九宫格内竟然出现了两个8~)。答案更是错误百出。不知道这些编辑们都是不识数呢,还是不明白数独的规则。 学习Ruby也有一段时间了,突然就想,正好拿这个练习一下。所以花了3个晚上和一个白天的时间用Ruby写了一个解决数独的程序。目前经过我做的一些基本测试,工作还算正常。如果有兴趣,可以在这里下载玩一玩。当然,因为是Ruby,所以还需要Ruby的Interpreter。然后在命令行窗口运行ruby sodoku.rb就可以了。(我是在Windows下写的,所以没有shebang。) 我的感觉就是,用Ruby写程序真的是一种享受。感觉需要用到的东西都是非常straightforward,没有什么要用到的东西需要你自己去费劲配置和研究的。而且大多数API,都可以直接猜出来。比如我写这个的时候,很多用到的API都是先猜着写,然后再看Ruby的API文档,竟然发现没有什么错误。证明了我是一个聪明的人。。。更证明Ruby的API和语法设计的非常友善。呵呵。 我用的算法应该也不是最优的(类似于判别树的算法),但应该比纯粹的枚举要好多了。欢迎讨论,如果大家对算法有兴趣。我正在打算专门写一个网页来介绍我的程序逻辑,不出意外,应该下周一之前写完。欢迎大家提意见。 另外,也有一个计划就是把它变成一个网络应用。不过那就需要更多的测试和调优了。
突然在网上看到了StarCraftII的消息,如果不是到暴雪的官方网站验证,还真是很难相信啊,毕竟一个将近十年的游戏,刚刚才要出第二代,真是有些让人不可思议。 暴雪公司到目前一共只出了七款游戏:1994年魔兽争霸I,1995年的魔兽争霸II,1996年的Diablo,1998年的StarCraft,2000年的DiabloII,2002年的魔兽争霸III,2004年的魔兽世界。可以说每个都是经典。其中从Diablo到魔兽III我都有正版的,因为我觉得它们值得。 网上消息说,StarCraftII将在明年10月1日发布,正好是StarCraft发布十周年啊。我想StarCraft将是80后的我们这一代非常清晰的一段回忆吧,伴随我们走过了青春岁月。 希望StarCraftII仍然是极品。Of course!








