九宫格的算法

2024-05-16 02:19

1. 九宫格的算法

九宫格的计算公式或者口诀有很多种。比如:
1、二四为肩, 六八为足, 上九下一, 左七右三。
2、一居上行正中央,依次斜填切莫忘;上出框时向下放,右出框时向左放;排重便在下格填,右上排重一个样。
口诀不仅适用于九宫,也适用于推广的奇数九宫,如五五图,七七图等等。

扩展资料
九宫格游戏对人们的思维锻炼有着极大的作用,从古时起人们便意识到九宫的教育意义。千百年来影响巨大,在文学、影视中都曾出现过。九宫格最早叫“洛书”,现在也叫“幻方” 。
在《射雕英雄传》中黄蓉曾破解九宫格,口诀:戴九履一,左三右七,二四有肩,八六为足,五居中央。
还有口诀:“一居上行正中央,依次斜填切莫忘;上出框时向下放,右出框时向左放;排重便在下格填,右上排重一个样。” 这口诀不仅适用于九宫,也适用于推广的奇数九宫,如五五图,七七图等等。

参考资料来源:百度百科-九宫格

九宫格的算法

2. 九宫格的算法

见到很多同样喜欢数学问题的朋友提问关于9宫格等的问题,我在此做出答案和解法,希望能给大家一点帮助。 

九宫格,二十五宫格,甚至八十一宫格,只要是奇数的平方宫格者能做到横格相加,坚格相加,斜格相加得数相同。而偶数的宫格只有十六宫格有些规律。 

下面是三宫格、五宫格、七宫格、九宫格图. 

三宫格(和15) 
8 1 6 
3 5 7 
4 9 2 

五宫格(和65) 
17 24 1 8 15 
23 5 7 14 16 
4 6 13 20 22 
10 12 19 21 3 
11 18 25 2 9 

七宫格(和175) 
30 39 48 1 10 19 28 
38 47 7 9 18 27 29 
46 6 8 17 26 35 37 
5 14 16 25 34 36 45 
13 15 24 33 42 44 4 
21 23 32 41 43 3 12 
22 31 40 49 2 11 20 

九宫格(和369) 

47 58 69 80 1 12 23 34 45 
57 68 79 9 11 22 33 44 46 
67 78 8 10 21 32 43 54 56 
77 7 18 20 31 42 53 55 66 
6 17 19 30 41 52 63 65 76 
16 27 29 40 51 62 64 75 5 
26 28 39 50 61 72 74 4 15 
36 38 49 60 71 73 3 14 25 
37 48 59 70 81 2 13 24 35 

这是八十一宫格的排列图,你可以从中找出规律。 
首先在第一行中间写下1,然后向下移动到最底下,向右移一格写下2,然后一下向右上方写到最边处, 
然后平移到最左边,向上移动一格再向右上方写。遇到数字后向下写一格,继续向右上写。 
按此规律,可写出任意奇数的平方宫格。 

偶数宫格好象没有规律,且除了十六宫格外,其它的好象也填不出来。填写十六宫格也有一个规律,叫做“顺序排列,双肩互换”,就是第一行写上1、2、3、4,第二行5、6、7、8,一直到第四行13、14、15、16,然后2与15对调,3与14对调,5与12对调,8与9对调就可以了。 

奇宫格我有另外的方法,1站当中,以马步照顺序下去就可以了,但要注意一点,几宫格逢几下一个数直接写下面,如5宫: 
23 12 1 20 9 
4 18 7 21 15 
10 24 13 2 16 
11 5 19 8 22 
17 6 25 14 3 

《寰神结》橘山黄陵九宫格解法 
tuan 2002-12-24 10:13:24 

因为是刚刚用记忆边回想边画的,如果有错请大家多指教,第一次进阳之间九宫格应该要全部压下 

1 2 3 
4 5 6 
7 8 9 

而一进去阳之间时应该呈现的是 
2 4 6 8为突起 
其余的为凹下 
其破解顺序为2-4-8-6 
按下后就会出现阴之间 

而阴之间九宫格应该要全部压下 
而一进去阴之间时应该呈现的是 
3 4 5 6 7为突起 
其余的为凹下 
其破解顺序为7-3-2-8-1-7-9-3-5-2-4-8-6 

然后就可以回到阳之间 
再将九宫格全部隆起 
其原九宫格跟第一次进阳之间时所呈现的一样 
所以破解顺序就为5-1-7-9-3-2-4-8-6 

原本的封尘之间就会变为龙泉之间了

3. 九宫格算法

像这样的九宫格的元素位置的算法,还是比较简单的,下面就来分析一下:
  
 九宫格算法
  
 三行三列的九宫格的每一个元素的位置的算法:
  
 编号为0的元素,位于第0行,第0列
  
 编号为1的元素,位于第0行,第1列
  
 编号为2的元素,位于第0行,第2列
  
 编号为3的元素,位于第1行,第0列
  
 编号为4的元素,位于第1行,第1列
  
 编号为5的元素,位于第1行,第2列
  
 编号为6的元素,位于第2行,第0列
  
 编号为7的元素,位于第2行,第1列
  
 编号为8的元素,位于第2行,第2列
  
 观察就会发现
  
 元素的行号 = 编号 / 列数
  
 元素的列号 = 编号 % 列数
  
 假设一个元素的 宽 高  水平间距 垂直间距
  
 width = 70
  
 height = 90
  
 colMargin = 10
  
 rowMargin = 10
  
 红色View的宽是bigW,高是bigH
  
 那么就可以得出:
  
 X = 列号 * (width + colMargin)
  
 Y = 行号 * (height + rowMargin)
  
 那么元素的frame = CGRectMake(x, y, width, height);
  
 元素的宽、高可以根据红色背景的宽和高、还有水平间距和垂直间距和列数和行数算出,同样的间距也是可以算出来的。

九宫格算法

4. 九宫格计算?

计算了一下,只有一个解,见下图。

5. 九宫格计算方法

详细的方法请参考http://baike.baidu.com/view/451932.htm#sub451932 

基础摒除法
  基础摒除法就是利用1 ~ 9 的数字在每一行、每一列、每一宫都只能出现一次的规则进行解题的方法。基础摒除法可以分为行摒除、列摒除、九宫格摒除。   实际寻找解的过程为:   寻找九宫格摒除解:找到了某数在某一个九宫格可填入的位置只余一个的情形;意即找到了 该数在该九宫格中的填入位置。   寻找列摒除解:找到了某数在某列可填入的位置只余一个的情形;意即找到了该数在该列中的填入位置。   寻找行摒除解:找到了某数在某行可填入的位置只余一个的情形;意即找到了该数在该行中的填入位置。   基础摒除法的提升方法是区块摒除法,是直观法中使用频率最高的方法之一.
唯一解法
  当某列已填数字的宫格达到8个,那么该列剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为列唯一解.   当某九宫格已填数字的宫格达到8个,那么该九宫格剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为九宫格唯一解.
唯余解法
  唯余解法就是某宫格可以添入的数已经排除了8个,那么这个宫格的数字就只能添入那个没有出现的数字.
区块摒除法
  区块摒除法是基础摒除法的提升方法,是直观法中使用频率最高的方法之一.
余数测试法
  所谓余数测试法就是在某行或列,九宫格所填数字比较多,剩余2个或3个时,在剩余宫格添入值进行测试的解题方法.
隐性唯一候选数法
  当某个数字在某一列各宫格的候选数中只出现一次时,那么这个数字就是这一列的唯一候选数了.这个宫格的值就可以确定为该数字. 这是因为,按照数独游戏的规则要求每一列都应该包含数字1~9,而其它宫格的候选数都不含有该数,则该数不可能出现在其它的宫格,那么就只能出现在这个宫格了. 对于唯一候选数出现行,九宫格的情况,处理方法完全相同。
三链数删减法
  找出某一列、某一行或某一个九宫格中的某三个宫格候选数中,相异的数字不超过3个的情形, 进而将这3个数字自其它宫格的候选数中删减掉的方法就叫做三链数删减法。
隐性三链数删减法
  在某行,存在三个数字出现在相同的宫格内,在本行的其它宫格均不包含这三个数字,我们称这个数对是隐形三链数.那么这三个宫格的候选数中的其它数字都可以排除.   当隐形三链数出现在列,九宫格,处理方法是完全相同的.   ------------------------------------------   修改为:在某行,存在三个候选数字分别出现在三个宫格内,   在本行的其它宫格均不包含这三个数字,我们称这个数对是隐形三链数.那么这三个宫格的其它候选数都可以排除.   当隐形三链数出现在列,九宫格,处理方法是完全相同的   或者: 利用“找出某3个数字仅出现在某行、某列或某一个九宫格的某三个宫格候选数中的情形,进而将这三个宫格的候选数删减成该3个数字”的方法就叫做隐性三链数删减法(Hidden Triples)。
矩形顶点删减法
  矩形顶点删减法和直观法讲到的矩形摒除法分析方法是一样的。矩形顶点删减法在识别时比较不容易找到,所以最好先使用其它的方法。
三链列删减法
  三链列删减法是矩形顶点删减法的扩展,如果不清楚矩形顶点删减法,可以参考矩形顶点删减法,以便于更容易理解本节内容。 利用“找出某个数字在某三列仅出现在相同三行的情形,进而将该数字自这三行其他宫格候选数中删减掉”; 或“找出某个数字在某三行仅出现在相同三列的情形,进而将该数字自这三列其他宫格候选数中删减掉”的方法 就叫做三链列删减法。
关键数删减法
  在进入到解题后期,利用前面讲到的唯一候选数法、隐性唯一候选数法、 区块删减法、数对删减法、隐性数对删减法、 三链数删减法、隐性三链数删减法、矩形顶点删减法、 三链列删减法都无法有进展的时候,可以考虑使用关键数删减法。关键数删减法就是在后期找到一个数,这个数在行(或列,九宫格)仅出现两次的数字。我们假定这个数在其中一个宫格类,继续求解,如果发生错误,则确定我们的假设错误。如果继续求解仍然出现困难,不妨假设这个数在另外一个宫格,看能不能得到错误。这就是关键数删减法.
编辑本段排除法
  当某一列,某一行或某一宫里已填7个数字时,可采用排除法,排除不可能出现在这个格子的数,从而确定格子里应该填什么数。比如某一行已填1,3,4,5,7,8,9,还剩2,6,而其中一个空格所在的列上已有了2,可知这个空格里不可能是2,那么另外一个空格里一定是2,那么这个空格里一定是6。   当某一列,某一行或某一宫里已填6个数字时,也可采用排除法。
编辑本段变形数独概述
  数独发展到今天,类型已经多种多样,如果按不同条件细分绝不下百种,而且数量还在增加中。大家平时可以常见的变形数独,如:对角线数独、锯齿数独、杀手数独等等。     对角线数独
  锯齿数独
  杀手数独
所谓变形数独,即改变一些标准数独的条件或规则,形成的新型数独题目,有的变形数独也会同时具备多种变形条件,变形条件如下:   1、使用数字的数量不同可以有4字数独、6字数独、16字数独、25字数独等等;   2、增加限制区域的类别可以有对角线数独、额外区域数独、彩虹数独等等;   3、宫形发生变化有锯齿数独;多个数独叠加起来有连体数独、武士数独、超级数独等等   4、用其它元素代替已知数字有字母数独、骰子数独、数码数独等等;   5、利用单元格内数字之和或乘积等关系有杀手数独、边框数独、箭头数独、魔方数独、算式数独等等;   6、利用相邻单元格内数字的关系有连续数独、不等号数独、堡垒数独、XV数独、黑白点数独等等;   7、单元格限制数字属性有奇偶数独、大中小数独等等;   8、利用数独外提示数字有边缘观测数独、摩天楼数独等等;   9、按禁止同一数字位置有无缘数独、无马数独等等;   10、非方形数独有圆环数独、立方体数独、六角数独、蜂窝数独等等;   11、需要多个数独条件配合才能解题的有三合一数独、双胞数独等等。   以上11种分类并非全部变化条件,只是常见的大类,还有不少变形数独未举例,其实变形的条件不会有极限的,只要你有想象力,可以创造出属于你自己的新型变形数独。虽然数独条件变换多端,但有一条始终不变的绝对条件——同一限制区域内不能出现重复数字。只要符合这个条件,就没有脱离“数独”的范畴。

九宫格计算方法

6. 九宫格怎么算

中间放5然后是15一行的和

7. 九宫格是怎样计算的?

九宫格的计算口诀:二、四为肩, 六、八为足。 上九下一, 左七右三
举个例子:15、-12、-9、-6、-3、0、3、6、9
因为这组数的差是一样的,因此可以给他们编号-15、-12、-9、-6、-3、0、3、6、9可以分别为①、②、③、④、⑤、⑥、⑦、⑧、⑨
这样就变成我们平时所用的简单九宫格了,根据口诀:2、4为肩,6、8为脚5为中的口诀,可以推出:
②⑨④
⑦⑤③
⑥①⑧
再把序号变成原数字,就得到答案:
-12、3、0
9 、-3、-15
-6、-9、6

九宫格数独口诀:
第一招:三星分轨——先看右下和右中两个小九宫格中,各有一个8,右上的小九宫格中,从右至左,三列中往下看都有8了,所以8必在此宫中最左一列。
而最左一列5和4下只有一个空位,自然必定是8!再看左边三个小九宫格中,同理,1和3列中均有9,而当中一列最上的九宫格内只有一个空位,是9无疑!同理,左下小九宫格中的4也是如此推理填入。

第二招:双雄决位——图中蓝色的4个4,正是从下至上采用此招推导而出。下三行中已经两行有4,最后右下小九宫格中的最后一行7两旁的两个空格中,必有一4,眼睛往上看直列,两个空格中,有一列上面已经有4,另一个空位必定就是4了!同理,上面三个蓝4也是依此招填入。

第三招:一将纵横——虽然在右边三列中,只有一个1,但是由于右上角的小九宫格中,5、4、8三个数字构成一列,排除了出现1的可能。
因此1在此宫必定在当中一列之中,那么,右下角的一个九宫格中,1必定在3的这一列中,而3下的两个空格,下面一个空格横向已经有1,不能再出现1,所以,必在上面一个空格中,也就是用绿色标注的那个1。
同理,3和8亦可利用某个小九宫格已有的成列或成行的数字,推断出另外一个小九宫格中的行列位置,然后再根据旁列或旁行的数字来进行简单的推断。然后再运用第1第3招,继续填出加粗的红8和绿2。

第四招:余音自清——将行列中剩下的数字与旁行或旁列数字对比,也可确定某些数字的位置,例如下图右三列中的褐色数字9,就是因为从列上来看,这一列只剩下三个数字6、7、9,而9在行上来看,上下两行都有9,故中间必是9!
最后一行的9,也是同理,因为最后一行剩余数字为3、5、6、9,而右下角小九宫格最后一行已满,左下角小九宫格中已经有9,则必在下面中间小九宫格最后一行中,对照上列,右列上方已经有9,所以,必在中列。

第五招:击叶中枝——有的数字虽然自身无法确定,但是可以帮助你确定其他数字,好像是声东击西,也好像是因祸得福。
例如下图中左三列中间一小九宫格中的粉色5,由于这个小九宫格的最边一列上下两个空格可以根据整列其他数字推导出是6和7,虽然不知道谁6谁7,但是却可以帮助推导另外两个空格的剩余数字必为3和5,而第一列中间格的数字因为旁行已经有3,所以只能是5!
而另一空位自然是3。然后,我们再用第1招,也可以推出下面一个粗红体的5。再用第4招加第2招,推出中间行左边小九宫格的6和1。

第六招:两翼抱空——下图中右上角的小九宫格内紫色的9,是根据行的两个9,竖的两个9相交,在右上小九宫格内只剩下一个位置,就是这个小九宫格内必须要有的一个9字!
同理,即使只有行列两个相同数字交叉,也经常能依靠其他已占位的数字,找到唯一的空位,填上唯一而又必须的一个数字。接着9下的1、6自然浮出水面。回到第1招,推出这个小九宫格中的粗红3。这个小九宫格中的剩下最后两个数字2、7,也一举破解。

第七招:梳脉理络——在最后一行中,最左面的数字3,则可以用另一种方法得出,即“梳脉理络”。这一行中,本来还剩下3、5、6三个数字空位,但其他空位上列都有3出现,只有一个空位上列没有3,那么3必在此位!

第八招:吹谷去糠——从左数起,第三列中,目前还少三个数字2、5、7,将这三个数字放在这列中的每一个空格中,然后看行里面,发现第一行已经有了5、2,所以这个空格必定是7无疑!
有趣的是有时候即使剩下很多数字,都可以用此法解决,通常我在无路可走时,用此法,大多可解!接下去,左边中间的九宫格内,虽然2、5依然无法定位,但用“击叶中枝”法,却可确定是7了!那么横向右边中间的九宫格中的7也自然确定!而7、9之下,自然是最后一个6。

第九招:八面威风——接着如同降龙十八掌的最后一掌一样,混用以上8招,就是第九招!继续用第4招“余音自清”,解决左边第二列下面的小九宫格中的问题,三个空格应该是1、5、6,而观察旁行,只有上面没有1,那此九宫格中的1就在这个位置中。
5、6自然也相应落实。右下小九宫格中6一定,则最后一行自然剩下5填入即可。然后再看从右开始数的第4列中,剩下数字分别为1、2、6、7,用第8招“吹谷去糠”法,可判断出第二行2、6、7都有,所以必定是1,同时用第7招“梳脉理络”,定下中间下面小九宫格中的6,并相继确定2、7位置。
另外上面1一定,中间1也可定了,左上角小九宫格中1也确定了,同时这宫中,8、5相继确定,然后上面中间小九宫格中5。然后再看左边中间小九宫格,2、5也自然锁定位置。正中小九宫格中,5的位置也有了。做到这里,基本上已经大功告成。

扩展内容:

九宫格技巧:
联除法:在并排的三个九宫格中的两排寻找相同数字,再利用九宫格得出另一排中该数字位置,该方法适用于中高级数独
巡格法:找出在每个九宫格中出现频率较高的数字,得出该数字在其余九宫格内位置,该方法应用于方法一之后.
排它法:这个方法是解决问题的关键,易被常人所忽略.在各行列或九宫格中观察,若有个位置其它数字都不能填,就填余下的数字
待定法:此方法不常用却很有效.暂时确定某个数字在某个区域,再利用起来进行排除
假设法:即在某个位置随机地填上一个数字,再进行推演,并有可能最终产生矛盾而否定结论
行列法:此方法用于收官阶段,利用先从行列突破来提高解题效率
频率法:这种方法相比于上一种方法更能提高效率.在某一行列或九宫格列举出所有情况,再选择某位置中出现频率高的数字。

九宫格是怎样计算的?

8. 九宫格怎么算的

你这个数独游戏, 玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含1-9,不重复。

数独盘面是个九宫,每一宫又分为九个小格。在这八十一格中给出一定的已知数字和解题条件,利用逻辑和推理,在其他的空格上填入1-9的数字。使1-9每个数字在每一行、每一列和每一宫中都只出现一次,所以又称“九宫格”。