主题:一道比较难的数独题,至少我是花了好几天工夫才做出来 -- kmy1810
共:💬74 🌺15
每个数都可以推算出来,不能靠试错的哟.有人能在
两个小时之内作出来吗?
下一步如何解答?
外链图片需谨慎,可能会被源头改
本帖一共被 1 帖 引用 (帖内工具实现)
复 35min
7 6 8 9 1 2 3 4 5
3 9 1 4 5 8 6 7 2
2 4 5 3 6 7 8 1 9
4 2 6 8 7 9 5 3 1
5 3 7 6 2 1 4 9 8
8 1 9 5 3 4 2 6 7
6 7 2 1 8 3 9 5 4
9 8 3 7 4 5 1 2 6
1 5 4 2 9 6 7 8 3
复 35min
复 厉害,上花
复 35min
俺用了有一个多小时。
头次玩,开始还不知道九宫格有用:(
复 编个程序算不算?
2个小时考虑这题,我想不是一件有趣的事。。。如果再换道题,难道再考虑1个多小时?所以我想如果一劳永逸的话,2个小时写个程序,以后就省事啦!!!哈。
复 编个程序算不算?
一直在玩数独当作实在没事做时候kill time的工具,正好放假了,勾起了编程的欲望。
单纯的行,列和块内不重复的三个基本原则解不开这道题。需要用高级规则。
单纯的行,列和块内不重复的三个基本原则解不开这道题。需要用高级规则。
早就有写这个的愿望,但一直没有空,而且主观认为"行,列和块内不重复试试"就结了。放假前碰到几个学计算机的球友,他们说刚刚学了这个算法。所以俺就觉得这里面有道道,不然他们也不值得去学。俺不想再写单纯的命令行程序了,想把它写成Window之类的东东,所以这道题还不想提上日程。
不知老兄对这个算法有什么赐教,单独写出来大家来讨论是很有趣滴!
在每个空格里写上1到9,再用“行,列和块内不重复”这个原则一个个排除,直到剩下一个数为止。另外再加上特殊情况的处理,如一个格子里有几种可能,但其中一个数在行/列/块中只能在这个格子里出现。只要有足够的iteration,逻辑上似乎不应该太复杂。
我觉得“行,列和块内不重复”解上面那道题足够了,我用了大约30分钟。