数独题目怎么解?


数独盘面是个九宫,每一宫又分为九个小格。(宫即3*3的正方形)

在这八十一格中给出一定的已知数字,利用逻辑和推理,在其他的空格上填入1-9的数字。

使1-9每个数字在每一行、每一列和每一宫中都只出现一次,所以又称“九宫格”。

二,标准数独的隐含规则

标准数独有一个隐含的规则,就是根据所给的数字,必须有且只有一个解。

在这个前提下,可以证明,至少需要给出17个数字。

17个数字的数独也不难设计出来,下面的题目中就有。

三,标准数独中的微变种

这个数独看起来给的数也不少了,有27个,但是很难。

想了半天,一个都推不出来,还好我有下面的代码。

这就是这个数独的解了。

规则数独,对称性自然只能指数字的位置分布了。

规则数独和不规则数独在数字的分布上其实差别不大,也是那几种对称性,后面给出了一个示例。

相对而言,规则数独要想给出对称的位置分布的初始局面,比较简单。

而且因为格子画的本身就很对称,所以整体看起来很对称,这一点,不规则数独一般都做不到。

判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。

上图是一个部分填充的有效的数独。

数独部分空格内已填入了数字,空白格用 '.' 表示。

解释: 除了第一行的第一个数字从 5 改为 8 以外,空格内其他数字均与 示例1 相同。

一个有效的数独(部分已被填充)不一定是可解的。

只需要根据以上规则,验证已经填入的数字是否有效即可。

这个题目,就是直接输入规则数独,输出数独的解。

实际上这是标准数独必须满足的规定。

这个代码已经飞快了,无论什么数独都是毫秒级时间解决,然而还是超时了。

不愧是POJ,卡的太紧了。

初一看这名字,还以为是杀手数独,吓死了

自从2006年3月10日至11日的首届数独世界锦标赛以后,数独这项游戏越来越受到人们的喜爱和重视。 

据说,在2008北京奥运会上,会将数独列为一个单独的项目进行比赛,冠军将有可能获得的一份巨大的奖品―――HDU免费七日游外加lcy亲笔签名以及同hdu acm team合影留念的机会。 

所以全球人民前仆后继,为了奖品日夜训练茶饭不思。当然也包括初学者linle,不过他太笨了又没有多少耐性,只能做做最最基本的数独题,不过他还是想得到那些奖品,你能帮帮他吗?你只要把答案告诉他就可以,不用教他是怎么做的。 

数独游戏的规则是这样的:在一个9x9的方格中,你需要把数字1-9填写到空格当中,并且使方格的每一行和每一列中都包含1-9这九个数字。同时还要保证,空格中用粗线划分成9个3x3的方格也同时包含1-9这九个数字。比如有这样一个题,大家可以仔细观察一下,在这里面每行、每列,以及每个3x3的方格都包含1-9这九个数字。 

本题包含多组测试,每组之间由一个空行隔开。每组测试会给你一个 9*9 的矩阵,同一行相邻的两个元素用一个空格分开。其中1-9代表该位置的已经填好的数,问号(?)表示需要你填的数。 

对于每组测试,请输出它的解,同一行相邻的两个数用一个空格分开。两组解之间要一个空行。 

对于每组测试数据保证它有且只有一个解。 

编写一个程序,通过填充空格来解决数独问题。

数独的解法需 遵循如下规则:

数独部分空格内已填入了数字,空白格用 '.' 表示。

解释:输入的数独如上图所示,唯一有效的解决方案如下所示:

题目数据 保证 输入数独仅有一个解

2017年院赛F题 数独游戏

自从2006年3月10日至11日的首届数独世界锦标赛以后,数独这项游戏越来越受到人们的喜爱和重视。

数独游戏的规则是这样的:在一个9x9的方格中,你需要把数字1-9填写到空格当中,并且使方格的每一行和每一列中都包含1-9这九个数字。同时还要保证,空格中用粗线划分成9个3x3的方格也同时包含1-9这九个数字。比如有这样一个题,大家可以仔细观察一下,在这里面每行、每列,以及每个3x3的方格都包含1-9这九个数字。

第一行输入一个整数T,代表共有T组数据,每组之间由一个空行隔开。每组测试会给你一个 9*9 的矩阵,同一行相邻的两个元素用一个空格分开。其中1-9代表该位置的已经填好的数,数字0表示需要你填的数。

对于每组测试,请输出它的解,同一行相邻的两个数用一个空格分开。两组解之间要一个空行。

对于每组测试数据保证它有且只有一个解。

比赛的时候我带了好多以前打印的博客,其中HDU - 1426 Sudoku Killer里面的题目,其实就是这个题目原题。

芬兰数学家设计的题目和网友答案 本报官微截图

  扬子晚报微博粉丝破解“世界最难数独”

  数独是一种运用纸、笔进行演算的逻辑游戏。玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含1-9,不重复。每一道合格的数独谜题都有且仅有唯一答案,推理方法也以此为基础,任何无解或多解的题目都是不合格的。

  “芬兰数学家因卡拉花费3个月设计出了世界上迄今难度最大的数独游戏,而且它只有一个答案。因卡拉说只有思考能力最快、头脑最聪明的人才能破解这个游戏。”这是英国《每日邮报》6月30日的一篇报道,扬子晚报官方微博随后发布了这道“最难”的数独题。7月2日晚,网友@gkzhong在评论中贴出正确答案。记者采访到这位牛人,他给出的解题秘诀是:会推理数独,会写程序,能把推理的逻辑转换为计算机的实现。

  芬兰数学家3个月设计出“最难数独”

  近日,微博上疯传一道数独题目,扬子晚报官方微博也进行了转发,微博内容是:“据英国《每日邮报》6月30日报道,芬兰数学家因卡拉花费3个月设计出了世界上迄今难度最大的数独游戏,而且它只有一个答案,因卡拉说只有思考能力最快、头脑最聪明的人才能破解。

  详细的报道中说,通常这种游戏的难度被分为1到5级,但因卡拉表示他设计的这个游戏的难度实际达到了11级,其中最难的部分要求玩家提前想到10个数字的填写。因卡拉说,自己不敢肯定这是否永远会是世界最难解的数独,但他自信这是迄今为止被设计出来的最难的一个。

  芬兰数学家、花费三个月、难度11级……这些关键词一罗列,让网友顿时对这道数独题有了很高期待。有人抱怨称,一眼望去,一个也填不上;也有网友果断收藏,等空闲了再去研究。网友“我只是徐国彬”竟然还在微博上和朋友打赌:“从现在开始,24小时之内他解不出这个数独,就要在下学期帮我洗衫一个星期。否则我帮他洗衫一个星期。”

  技术男解出题目将答案@本报官微

  就在大部分网友还处在“膜拜最难数独题”的时候,7月2日晚,一位名叫“gkzhong”的网友在扬子晚报官微上贴出了自己的答案:“递归(递归作为一种算法在程序设计语言中广泛应用。递归的方法是程序设计中有效的方法,采用递归编写程序能使程序变得简洁和清晰编者注),300毫秒”,后面附上了数独数字排列。网友纷纷惊叹牛人的解题速度,并称:“芬兰数学家设计三个月的数独都被你解决了,了不起!”

  记者联系到这位智慧网友,名叫钟广凯,小钟是广东人,在北京已经工作五年了,家里的宝宝刚刚4个月。小钟微博上自称“一个有态度的程序员”。据他介绍,自己曾先后担任财经技术Leader,微博架构设计,从后加入到雪球创业团队,担任技术总监,架构师。

  说起玩数独,这位28岁的大男孩告诉记者,“高中时候在报纸或者杂志上看到会玩玩,以后就几乎没再玩过。”关于这次的数独题目,他觉得没什么特别的技巧,只是借助计算机完成演算而已。

  据悉,小钟在高中时代还没系统学习过编程,现在自己熟悉了很多程序知识,很容易想到把人推算的过程交由计算机完成,推理的逻辑还是一样的,只是计算机的速度和人的速度比较起来快了很多。

  “而且程序计算好了不会出错,人推理还容易出错。我这次推算着填每个格子都是相同的方法。推算用任何种语言都可以实现的,用递归循环最基础的东西。”

  这次数独的程序算法大概是这样的:比如你看倒数第二个格子,可以放的是2,5,7,然后将2放入,继续推导其它格子(比如倒数最后一个格子),如此一层一层深入,如果遇到冲突,往上返回一层继续推导,直到结束,这个逻辑如果用人推理的话会非常麻烦,所以借助程序来演算,方便很多。据小钟介绍,昨天看到这题目时先是在纸上进行推导,找出信息最多的单元进行广度优先,推完几个小格后,觉得嵌套太深,很难回溯,又不愿放弃,就改用程序推算,算法还是刚才的逻辑,用递归来实现。

  那么,是不是不懂程序的人就没有办法解答了呢?小钟告诉记者:“不懂程序的人也想得到,可能很多人也是这样推算的,只是这道题这种方式推算的难度比较大,深入的层次比较多。简单的题是推算有限个步骤就可以逐渐确定,但这题诱入得太深,回溯就很艰难。”

  最后,小钟还总结了一下解答这到数独题目需要具备的素质:会推理数独,会写程序,能把推理的逻辑转换为计算机的实现。据了解,C++、c语言、java、vb 这些计算机语言都可以进行这个数独的推演。

  不止一名网友贴出答案

  记者调查发现,除了2日晚上小钟贴出答案,其实早在7月1日中午,果壳网网友“jiangxj”也贴出了自己的答案。答案和小钟是一样的。至于推演过程,并没有太多的透露。

  在果壳网,有网友的注意力不在题目本身,而是对于难度等级产生了质疑。记者注意到,@独数之道官方微博也对难度等级进行了辟谣:“这两天微博上转的很多的一则关于数独的新闻,称芬兰Arto Inkala又出了一道11星的数独题,声称是世界最难数独。但是他在接受报纸的访问时,说的是他相信目前没有找到最难的数独,数独难度评价的标准还未建立,即使是目前gsf、hodoku、se等的评级标准下,他认为这些评级标准中最难的题还是没找到。”(记者 乔金玲)

  作者:乔金玲 (来源:扬子晚报)

我要回帖

更多关于 怎么出数独题 的文章

 

随机推荐