永发信息网

求数独的编程思想

答案:2  悬赏:10  手机版
解决时间 2021-11-08 03:32
求数独的编程思想
最佳答案
我用EXCEL的宏编过,但是算法不太好,简单得可以作出,难得的就不行了
想法如下:
建立一个X(a,b,c,d)的列阵,4个数为(1,2,3)中的一个
a,b表示大的33阵(就是你所说的"区")的位置
c,d表示在特定33阵(特定"区")中的位置
那么每个特定的X表示特定的空格位置
每个X初始都=123456789
X的值表示这个空格可能取的数
然后已经给出的条件的X改为条件给出的数

现在我虽然不知道剩下的空格是哪个数,但是我可以知道特定的空格中不可以是哪个数(按规则)
step1
所以分别检查每个空格
将不可能出现的数字从123456789中删去(比如这个区已经存在1,4,5那么我们把区中其他的空格的1,4,5去掉,变成2,3,6,7,8,9)
这样X的位数就越来越小了
当X的长度等于1的时候那么这个空格就是唯一的了
step2
检查每一个区中的9个数中含有几个1,如果只有1个,那么含有1的哪个空格就是1了,(1-9,依次检验),(行或者列也要分别检验)
step3
检查是不是每个数都小于10,如果不是
检查经过step1和step2后,各个数字有没有变化,如果有,那么重复step1,step2.没有的话(说明按刚刚的步骤只能解到这样了)结束循环

我编的只是为了方便帮我解题,太难的做不出,但是用的话可以解出很多数了,人在看一下,很快就解出了

如果一定要编到底的话,我也想过
然后在X中寻找1个2位数,假定2位数中的一个是正确的,然后在按刚刚的步骤,如果结果有矛盾则就是另一个数
希望对你有帮助
全部回答
太复杂了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
姓汪大字辈份怎么取名字?
流体输配管网第三版课后答案
呼和浩特市自学考试报名时,考点选项里有个呼
盗墓的南派和北派有那些区别?
方太EN05E和EMD3哪个好,对比较型号有什么区
我的英语实在惨不忍睹啊,实在hold不住了,急
铁狮电动磨浆机打一点豆子豆渣就堵住滤网怎么
猜图片中的黑天鹅系着蝴蝶结是什么东西
给小学六年级的当家教该教点什么
写出半岛和附近海洋的名称 求大神帮助!急!
天天晚上听到麂子叫有什么兆头,在家里听到的
printf(“a=%5.2f....中为什么要加%5.2f?不
足疗有那些好处?
大物 求电场强度那两个公式怎么来的??
大家用收音机听到过这样一个奇怪的电台吗
推荐资讯
请问加拿大多伦多哪里卖潮牌比较多.比如哪里
哪些菜是可以搭配水果做的?
怎样在空心的竹筒上开洞?直接用木螺钉钻进去
黄平有到成都的飞机票吗
芈月心里真正爱的人是谁
交往4个月了 我不确定他到底喜不喜欢我 我可
请问有没有惠州到湖南龙山的私家大巴车
本人不知情下律师可以私下拿着签名按手印的委
《同床异梦2》“秋于夫妇”济州岛之行怎么样
阳高县下神峪乡中学地址在什么地方,我要处理
明天生日,蛋糕有没有能送家门口的软件
孝德中学和德阳六中哪个好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?