Blog on 27th Floor
主页 随便 电脑 电影 社会 阅读 下载 本站 存档
主页 随便 电脑 电影 社会 阅读 下载 本站 存档

大锤解数独

05/24/06。  cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。


大锤即Sledgehammer,数独即Sudoku,这篇文章的作者是黄炜华,Google工程师,目前的世界数独冠军赛冠军,前一段Google达芬奇密码游戏的设计者。

数独游戏就是如图所示的往这种9×9的格子里放数字的游戏,要求是每行、每列以及第个3×3的小区内正好分布1-9,而没有重复,也没有漏用。这个图是黄炜华得冠军的最后一题。黄把他自己解Sudoku的方法称为大锤,这个方法看来确实对解复杂的题目很有用(这篇文章有全文翻译,地址在前面链接下面的留言中)。



首先得有一点集合的概念,通常用文氏图表示。这个图里,如果要达到4个圈中的每一个正好有一个图形的要求,就不能选只在绿圈中的图形,也就是三角;同样也不能选那个方块,因为它同时处在两个绿圈中。这里,黄把红圈叫做前提,而把绿圈叫结论;前提没有交叉,而结论可以交叉。



可以得到两条定理:

选红圈外的元素会让绿圈有多于一个图形,因此不能选。
选1个以上绿圈包围的元素会让绿圈有多个图形,因此不能选它。

这个方法的秘诀就在于构造这些前提和结论(条件),并用集合图表示出来。



最简单的正中间那个J点必须是8,这很容易看出来,用这个黄氏大锤法的方法是先表示出这些条件,如第1列,A-S都等于5,就是说这些方块中只能有一个5,第2列,表示这一列里只有一个4,如此类推。它们的前提是,A里面已经是5,B已经是4,把它们圈起来就是前提。同样,J可以是1-9这些数字,也是一个条件。



根据上述定理,红圈外的不能选,两个绿圈的也不能用,因为他们都会引起结论中出现重复结果,所以J只能是8。

下面作者选中的是正文中央那个3×3的小区,利用的条件是横竖两个7。





同样地,BCDG4个点在绿圈而不在红圈中,它们不能是7,而GCDGF这些点又在这个3×3的方块中,它们也是一个条件,那只有F是7了。

下面解最右下角这个格子。利用了与它所在3×3小区有关的含有2的行与列,有3个包含2 的前提,以及3个行/列和两个3×3小区的条件。利用上述定理,可以消掉许多未知因素。最后一个条件是BD所在小区中必须有一个2,这就意味着HN这两点又被消去,则Q点必须是2。





上面这些都是比较规矩的,实战中规矩的大概都要靠大脑,然后复杂的就要同时运用更多条件和前提,前提也可变成是两个方块的取值。如此天马行空一番,解出K=4。最长的两条空的交叉点。



谁有兴趣把它解完?

05/24/06 22:47:19,由cathayan发表。目录:杂七杂八

6条评论

不错,不过现在没时间

ypowerstar 于 05/25/06 10:18:53 发表. 

手机上装了两个不同 的数独 游戏

不过借助 hit help 也经常解不开

http://my.donews.com/xlight/ xLight 于 05/25/06 14:15:55 发表. 

"如果要达到4个圈中的每一个正好有一个图形的要求"
抱歉,看不明白这句话是什么意思,能否给解释一下呢?

http://lasby@sohu.com xorms 于 05/25/06 19:38:40 发表. 

就是两个红两个绿共4个圈,现在要求从9个三角方块星星中拿出一些,让每个圈中正好只有一个。

http://blog.cathayan.org/member/1 cathayan 于 05/25/06 20:17:38 发表. 

http://norvig.com/sudoku.html

bb 于 05/25/06 23:15:24 发表. 

有没有初级一点的,我才学着玩!

http://xuantao193579@sina.com 苍山峰毅 于 12/07/07 15:51:36 发表. 


这篇文章已经关闭,不能添加评论和投票
I am watching and will delete all spam.

我的E-Mail


Copy&Paste Exchange

访问CPeX Group

订阅Feed

订阅Feedburner
Feedsky订阅
本站订阅

请登录

导航

cathayan.org Web

最新贴

RIME 小狼毫/鼠须管的极点及五笔拼音配置
Software that rocks or sucks less
一棵热带的树换新叶的过程
几个有用的Vim招术
论语七 述而
Nomacs 图像浏览器
Windows 文件校验
Windows 10 文件批量命名简单方法
Windows 10 文件删除高级操作
本站也算是有响应式设计了

最新评论

Powered by

Powered by Nucleus CMS

版权声明

Creative Commons License
Blog on 27th floor by Cathayan is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
Powered by Nucleus CMS v3.71. Best view with Mozilla browsers.