Logic 可能的数独谜题数量

Logic 可能的数独谜题数量,logic,permutation,Logic,Permutation,维基上说数独有667090375202102072936960个可能的排列。我试图找出,但似乎很难。有人能告诉我这个数字是如何计算的。你可以在这个维基上找到所有关于它的信息: Bertram Felgenhauer和Frazer Jarvis在2005年计算出标准9×9网格的有效数独解决方案网格数为667090375202102072936960。这个数字等于9!×722×27×27704267971,最后一个因子为素数。结果是通过逻辑和蛮力计算得出的。你可以阅读Bertram Felgenha

维基上说数独有667090375202102072936960个可能的排列。我试图找出,但似乎很难。有人能告诉我这个数字是如何计算的。

你可以在这个维基上找到所有关于它的信息:


Bertram Felgenhauer和Frazer Jarvis在2005年计算出标准9×9网格的有效数独解决方案网格数为667090375202102072936960。这个数字等于9!×722×27×27704267971,最后一个因子为素数。结果是通过逻辑和蛮力计算得出的。

你可以阅读Bertram Felgenhauer和Frazer Jarvis对原始出版物的最新重写,它详细说明了超过7页的计算。计算实际上并不简单(其想法是列举不同且有效的数独网格,而不是9x9网格上所有可能的数字排列)。

有趣的是,在计算并发布实际值之前,互联网论坛上可能发布的数独数量有一个估计。 这篇文章的作者指出,他的猜测中有一些未经证实的假设,但估计值与后来公布的实际值相差0.2%

在这篇文章中,你可以找到基于类似猜测的其他数独类型的一些估计

以下是全文:

嘉宾»2005年4月22日星期五下午1:27

让我们从一个完全不同的方向来尝试:

步骤A:
假设唯一的“规则”是“块”规则,并且行和列规则不存在。然后每个块可以按9!种方式或9!^9种方式排列以填充拼图(1.0911*10^50“解决方案”)

步骤B1:
如果我们接着说“让我们添加一个关于行中唯一值的规则”,那么前三个块可以按如下方式填充:
块1:9!方式
块2:选择每个3单元格行中的值的56种方法,以及排列它们的3种方法(请记住,我们还没有发明列规则)。
块3:填充1和2后,现在定义了每行中的值,但每行可以按3!种方式排列。
因此,我们有9!*56*3!^6种方法来填充前三个区块,并将该值乘以三次以填充所有九个区块。(或8.5227*10^35个解决方案)。请注意,通过添加这一新规则,这表示1.2802*10^14的“缩减率”(表示为R)

步骤B2:但我们也可以很容易地添加一个“列中唯一”规则,并通过相同的R值向下而不是横向获得相同的结果

步骤C:(这里是我的解决方案不严格的地方)如果我们假设这些规则中的每一条都会以完全相同的比率限制有效解的数量,那么会有一个R^2的合并缩减比率。因此,1.0911*10^50解的初始值将缩减R^2的一个因子,或1.639*10^28,剩下6.6571*10^21个有效解

这篇文章和这篇文章的作者是凯文·金福()


附加注释

假设块1是

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 如果我们忽略行的顺序,那么Block2有以下几种可能性

1 2 3 4 5 6 4 5 6 7 8 9 7 8 9 1 2 3 this is 1 possibility 1 2 3 7 8 9 4 5 6 1 2 3 7 8 9 4 5 6 this is 1 possibility 1 2 3 two of 4,5,6, one of 7,8,9 3*3 4 5 6 the two remaining of 7,8,9, one of 1,2,3 3 7 8 9 the two remaining of 1,2,3, the remaining of (two of 4,5,6) 1 these are (3*3)*3*1=27 possibilities 1 2 3 two of 7,8,9, one of 4,5,6 3*3 4 5 6 two of 1,2,3, the remaining of 7,8,9 3 7 8 9 the two remaining of 4,5,6, the remaining of two of 1,2,3 1 these are (3*3)*3*1=27 1 2 3 4 5 6 4 5 6 7 8 9 7 8 9 1 2 3 这是一种可能性 1 2 3 7 8 9 4 5 6 1 2 3 7 8 9 4 5 6 这是一种可能性 1 2 3 4,5,6中的两个,7,8,9中的一个3*3 4 5 6剩下的两个7,8,9,一个1,2,3 7 8 9剩下的两个1,2,3,剩下的(两个4,5,6)1 这些是(3*3)*3*1=27种可能性 1 2 3 7,8,9中的两个,4,5,6中的一个3*3 4 5 6 1,2,3中的两个,其余的7,8,9 3 7 8 9剩下的两个4,5,6,剩下的两个1,2,3 1 它们是(3*3)*3*1=27
因此,所有这些都是1+1+27+27=56种可能性。

生成所有有效的数独谜题。我使用回溯法为此编写了程序。但可能需要几年才能执行。正如您所见,这是“不可能的”"用一台标准的计算机来计算所有这些。有很多方法可以使用高级组合数学来完成。我唯一需要的是使用排列来计算数字的数学步骤。我投票结束这个问题,因为它与编程无关。@Jagan,那么你不会理解这里给出的任何答案,either@Sojourner9:什么的“正确解决方案”
Block 2:56种选择哪些值的方法
-你是如何得到56的?@theprogrammer嗨,我在帖子中添加了一个解释。我希望这能有所帮助。