数独游戏的算法研究与实现

数独游戏的算法研究与实现
数独游戏的算法研究与实现

"数独"游戏的算法研究与实现

作者:李盘荣, LI Pan-tong

作者单位:无锡市广播电视大学,江苏,无锡,214011

刊名:

电脑知识与技术

英文刊名:COMPUTER KNOWLEDGE AND TECHNOLOGY

年,卷(期):2008,3(26)

引用次数:0次

参考文献(4条)

1.今天,你数独了吗?(NO.19)[期刊论文]-快乐青春 2007(11)

2.严蔚敏.吴伟比数据结构 1993

3.谭浩强C程序设计 2005

4.刘晓宝数独游戏的解题算法[期刊论文]-电脑编程技巧与维护 2007(5)

相似文献(3条)

1.学位论文谭志明基于图论的图像分割及其嵌入式应用研究2007

图像分割是一种底层的图像处理技术,它根据特定的特征将图像分离为连通的有意义区域,可以广泛应用在图像及视频的高级处理任务中。图像分割技术经过几十年的发展,形成了众多的方法、繁杂的类别和海量的文献,但是与人眼视觉特征相一致的全局分割问题一直得不到解决。在这些方法中,基于图论最小生成树的方法利用区域比较准则和最小生成树算法分割图像,具有获取全局特征的能力,计算速度快,是一种可以作为应用研究的分割方法之一。本文的工作主要基于此算法。 为了提高此算法应用的可能性,我们需要更改算法及优化程序,提高其全局分割效果和计算速度。本文在分析基于最小生成树分割算法概念、原理、数据结构和实现方式的基础上,发现其运算瓶颈为边的数目,也就是图中实际计算的节点数目。因此本文利用图像局部特征相似的特性,使用N×N,N=1,2,3大小的自适应像素块映射为单个计算节点,大大降低了实际计算的节点和边的数目,从而降低了核心算法的计算复杂度。 为了适应块结构,本文更改了邻域系统,提出了基本连接和超连接的层次。基本连接保证了相邻区域的邻近性,而超连接提供了区域之间的连续性。这种两层的连接方式提高了算法获取全局特征的能力,获得了既不过分割也不欠分割的效果,接近图像对象的数目,减少了原算法分割区域的数目。另外,为了分析基于最小生成树算法的结构,本文将其分为三个阶段:前处理、核心算法和后处理。原算法大部分的计算负担集中在核心算法上,算法结构极不均衡。因此,本文在保证三个阶段接口不变的基础上,将构造图的过程从核心算法阶段转移到前处理阶段,均衡了计算量,增加了算法并行处理的能力。 图像进行分层分析和表达由来已久,具有在不同分辨率下表现图像内容的优势。金字塔图像分割方法是一种分层的分析方法,其突出优点是可以累积局部特征,从而表现全局特征。金宁塔分为规则金宁塔和非规则金字塔,后者可以克服前者的刚性特点,与图像内容相适应,成为金字塔图像分割算法的主要实现形式。人们提出了不同的非规则金字塔数据结构和缩减方法,但足大多数比较复杂。本文利用基于最小生成树分割算法计算速度快、结构简单、有效进行区域比较的优势,将其作为缩减核应用到非规则金字塔结构中,形成一种快速有效的块嵌入非规则金字塔分割算法。为了将金字塔高度控制在合理范围内,提高缩减因子,本文在第零层使用块结构加快其收敛速度,并提出了一种快速的邻近区域搜索方法以有效地构造高一层的边。试验结果表明,新的算法具有良好的分割效果和计算速度。 块嵌入非规则金字塔分割算法使用区域的特征平均值代替父节点的特征值,降低了噪声对算法的影响,从而无需额外的去噪方法,消除了原算法的高斯滤波参数。本文使用权重的最大最小差值代替原算法抑制小区域的参数,可以在每层上自动适应图像的特征。另外,在构造块结构的过程中,本文使用图像的标准差作为比较准则,从而无需输入块构造参数。金字塔累积局部特征的本质可以去除合并小区域的步骤,从而消除了最小区域参数。本文的这些工作使块嵌入非规则金字塔分割算法成为一个参数独立的自动分割算法,有利于实际应用。 良好的分割效果与快速计算速度使分割算法进行实时应用成为可能。本文在高清数字电视解码器片上系统平台软硬件工作的基础上,分析了基于MIPS处理器的嵌入式平台在时间和空间上的运算资源优化,尝试将基于最小生成树的图像分割算法进行嵌入式移植。在回顾算法改进的基础上,本文对程序代码进行运行时间和空间上的优化,包括运行时间剖析、缓存优化、调用关系优化和动态内存分析等

,以软件IP的形式移植到基于MIPS开发平台Malta板上。分割程序建立在一个嵌入式软件系统上,包括启动程序、Linux操作系统、API和库等,以主机控制目标板的方式运行,通过网络远程读写图像文件。

2.期刊论文雷蕾.沈富可.LEI Lei.SHEN Fu-ke关于数独问题的算法的设计与实现-电脑知识与技术(学术交流)2007,1(2)

数独问题(Sudoku)是十八世纪瑞士数学家欧拉提出的、近年来风靡全球的一种智力游戏.本文通过分析数据结构、函数、以及"有限递推"预处理算法和回溯算法,深入探讨了数独问题的解决方案,并给出了该方案的具体实现.

3.学位论文马晓磊OMR技术在选举工作中的应用研究1999

该文试图通过对"计算机选举系统"硬件及软件设计的论述,研究OMR技术在选举工作中的应用,旨在讨论利用OMR技术开发应用系统的一般途径和方法,开拓OMR技术更广的应用范围.围绕系统的核心OMR,该论文分析了自动识别统计选票的原理和过程,阐述了外围支持环境,包括硬件电路设计、机械传动机构设计、选票的标准化设计和软件的编制及规范化等基础理论研究工作的思路及过程,建立了系统系结构的整体概念.作者首次制订了选票的详细设计规则,确定了网络数据的传输机制,分析确定了文件数据结构,首次提了并定义了选举和选票格式的若干参数,独立编制了监控程序、数据处理程序、调试工具程序等软件,规范和整理了控制、通讯等程序、数据处理程序、调试工具程序等软件,规范和整理了控制、通讯等程序.对软件的各顶主要功能做了详细介绍.在编码过程中,采用了扩展小字库.对软件的各顶主要功能做了详细介绍.在编码过程中,采用了扩展小字库、汇编嵌套等等多种技术技巧.该论文还从数据采集的角度,讨论了光电管在动态条件下,对边框的测量宽度和频率问题,针对在宽度和频率受限的情况下,如何减少随机误差产生的可能性,介绍了"跟踪判断"技术的原理.最后,论文提出了系统今后需要继续研究和解决的几个问题.

本文链接:https://www.360docs.net/doc/4116175594.html,/Periodical_dnzsyjs-itrzyksb200826042.aspx

下载时间:2010年5月4日

数学游戏 (数独和拍七令)

1.简介 数独(日语:すうどく)是一种源自18世纪末的瑞士,后在美国发展、并在日本得以发扬光大的数学智力拼图游戏。拼图是九宫格(即3格宽×3格高)的正方形状,每一格又细分为一个九宫格。在每一个小九宫格中,分别填上1至9的数字,让整个大九宫格每一列、每一行的数字都不重复。 数独的玩法逻辑简单,数字排列方式千变万化。不少教育者认为数独是锻炼脑筋的好方法。 如今数独的雏型首先于1970年代由美国的一家数学逻辑游戏杂志发表,当时名为Number Place。现今流行的数独于1984年由日本游戏杂志《パズル通信ニコリ》发表并得了现时的名称。数独本是“独立的数字”的省略,因为每一个方格都填上一个个位数。 数独冲出日本成为英国当下的流行游戏,多得曾任香港高等法院法官的高乐德(Wayne Gould)。2004年,他在日本旅行的时候,发现杂志的这款游戏,便带回伦敦向《泰晤士报》推介并获得接纳。英国《每日邮报》也于三日后开始连载,使数独在英国正式掀起热潮。其他国家和地区受其影响也开始连载数独。 2.数独术语 要理解如何对一个数独题求解,我们先来介绍一些在数独游戏中常用的术语。

一个数独谜题通常包含有9x9=81个单元格,每个单元格仅能填写一个值。对一个未完成的数独题,有些单元格中已经填入了值,另外的单元格则为空,等待解题者来完成。 行和列 习惯上,横为行,纵为列,在这里也不例外。行由横向的9个单元格组成,而列由纵向的9个单元格组成。很明显,整个谜题由9行和9列组成。为了避免混淆,这里用大写英文字母和数字分别表示行和列。例如,单元格[G6]指的是行G和第6列交界处的单元格,它已填入了值7。 区块 术语区块指的是起始于特定位置的9个相邻的单元格组。在上图中,区块用交替相间的背景颜色来注明。例如,对于最左上角的区块,我们表示为起始于[A1]的区块。 单元 任何一行,一列或一个区块都是一个单元。每个单元都必须包含全部但不重复的数字1到9。 3.数独题目难度 很多人认为数独题目的难度取决于已填入谜题中的数字的数量,其实这并不尽然。一般来说,填入的数字越多,题目就越容易求解。然而实际上,有很多填入数字多的题目比填入数字少的题目要难得多。这就需要有其他的方法来确定的难度。 在应用中使用得比较多的一种方法是看看要解决一道数独题目需要用到哪些数独技巧。极简单的题目用到的可能只是最基本的技巧。而相对复杂的题目可能要用到十分高深的解题方法。通过这样来设定游戏的难度相对而言较为客观。 4.数独的变化

数独游戏的难度等级分析及求解算法研究

数独游戏的难度等级分析及求解算法研究2——数独难度等级 2 数独难度等级 数独游戏发展至今,在数独爱好者的积极探索下,求解数独的算法众多,有矩形顶点删减法、关键数删减法等[7]。解答一道数独问题是一种或多种方法相互结合,为了使玩家能循环渐进解决数独题目,并且在解答数独过程中不断提高解决数独问题的能力。不同的数独题目被划分为不同的难度等级。最直接的方式是根据个人求解数独的时间长短区分难易。但由于个人求解数独受方方面面的影响,此种划分方式主观因素太强,导致划分的准确率低。如何划分数独的难度系数才是比较科学的呢? 2.1 空格数与难度等级 2.1.1 空格数与难度等级的分析 数独书籍对数独难度的划分较为清晰,研究从分析数独书籍对数独难度等级的划分开始。首先统计《旅途中的数独》[8]《数独》[9]两本书数独谜题的情况。表一所统计的是《旅途中的数独》的题目,统计的题目总数为100道,表格的行表示空格的个数,列表示难度的级别,初级最容易,难度依次递增,超级为最难;表二所统计的是《数独》-5,题目数一样为100道,表格行表示空格的个数,列表示难度的级别,一星为最容易,二星为容易,三星为难,四星为最难。例如:表一的首格10表示,难度为初级,空格个数为45的题目有10道;表二的首格3表示,难度为一星,空格数为50的题目有3道。 表1 统计《旅途中的数独》空格数与难度

表2 统计《数独》空格数与难度 分析2个表格,我们初步得到,随着难度的加大,空格数逐步增加。书中不同难度等级的题目数目不一致,难度较低的题目数较少,难度较高的题目较多。为进一步发现问题所在,笔者对数独题目的统计表格进行处理,在同等难度上,将每种空格的题目个数除以该难度的总题目数,得到如下表格。 表3 计算《旅途中的数独》空格率与难度 The probability of space and difficulty from the book calls planes, trains and sudoku 表4 计算《数独》空格率与难度 表格的数据用面积图表表示(图1、图2),由图可以清晰看出,难度等级递增,空格数也不断增加。难度等级与空格数存在正比的关系。

数独问题 数学建模

数独问题 摘要 本文是对数独问题进行求解。结合数独生成的特点,立足于题中数独建模和 WNF P函数和整数规划模型。 求解的要求,建立了数独难度分析() 对于问题一,首先研究数独难度的影响因素,通过综合分析数独的特点结构,WNF P可以在常数时间内计算出来以衡量数独的难易程度。通过计算可知得出() ()0.04531 WNF P=,根据数独难度的划分得到如下结论:数独难度系数为4,达到了极难的程度。 对于问题二,我们通过对此数独的分析和讨论,利用穷举法,通过matlab 软件编程求解,最终得出答案,如表1所示。 对于问题三,我们利用回溯法思想,建立求解模型,具体算法一般采用如下步骤: 1).在此数独初盘选择一个空单元格; 2).取这个单元格中一个可能的候选数; 3).将这个候选数填入单元格中,迭代完成数独; 4).若这个候选数推导得到一个无效数独终盘,返回此单元格取其他候选数; 对于问题四采用整数规划模型,采用三维0-1 变量的方法,运用lingo软件编程求解。最终得到答案,如表1所示。 关键词:数独数独难度分析穷举法回溯法整体规划

1问题的重述 前段时间芬兰一位数学家号称设计出全球最难的“数独游戏”,并刊登在报纸上,让大家去挑战。该数独如下图所示: 数独是根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含1-9,且不重复。每一道合格的数独谜题都有且仅有唯一答案,推理方法也以此为基础,任何无解或多解的题目都是不合格的。 根据以上描述,试完成以下问题: 1. 分析此数独的难度; 2. 用穷举算法求解数独; 3. 设计此数独求解的较优的算法; 4. 建立数独求解模型并给出此数独的答案。 2模型的基本假设 1该数独问题存在唯一解。 3符号说明 X表示空单元格候选数 ? () X的加权函数 W n表示候选数数? () c X表示数独空单元格中的候选数数目函数 n E p表示该数独的空格处 () () WNF P表示该数独难度的函数 x表示数k是否填入数独方中的(i,j)处 ijk c表示往空格处填入0后数独方中(i,j)处的数 ij y表示经过求解后数独方中(i,j)处的数 ij

儿童数独入门三

儿童数独入门(三) 戎卫武 一、教学内容: “数独”(英文名为 SU DOKU)(三) 二、教学目标: 知识与技能: 1、培养学生把握全局的能力。 2、培养学生的观察反应能力。 3、培养学生分析推理能力。 数学思考:通过数独游戏,可以益智,可以获得持久的脑力锻炼。 解决问题:培养学生用排除法思考问题,初步学会的推理分析问题,掌握解决问题的策略。 情感态度与价值观:既在同伴之间的交流与团结协作中,获得肯定,又在独立思考后,获得成就感。 三、教学重、难点: 培养学生的观察和推理能力。 四、教具和学具: 课件数独游戏学具 五、教学过程: 1、激趣引新: 师:同学们,我们已经学会了玩简单的数独,你们喜欢数独吗?今天老师将为你们介绍9×9的数独游戏:

数独是一种逻辑数组谜题。“数独”是一个9×9的方阵,它是由九个“九宫格”(图中黑色实线围住的3×3的方阵)构成的,每个九宫格又是由九个小格子构成的,在空白的小格子里填上1~9中的数字,使得每个数字在“九宫格”的每行、每列、每个九宫格中均只出现一次。游戏会从一个部分带有数字的九宫格开始。 2、建立数独的模型 数独是一款很经典的益智数字游戏,可以用来锻炼益智的,它包含九直行九横列,共分成九个九宫格,每行列都由1到9、不能重复的阿拉伯数字组成,每个九宫格亦然。 赶紧来看看数独的游戏规则吧: 数独游戏在9x9的方格内进行,分为3x3的小方格,被称为“宫”: 数独游戏首先从已经填入数字的格子开始: 数独游戏的目的是根据下列规则,用1至9之间的数字填满空格,一个格子只能填入一个数字: 1. 每个数字在每一行只能出现一次: 2. 同样的,每个数字在每一列只能出现一次: 3. 每个数字在每一区只能出现一次: 总结这些规则,即每个数字在每一行、每一列和每一宫只能出现一次。 3、应用体验。 学生用数独游戏卡片及学具玩9×9数独游戏 两人一组(或四人一组)玩 第1---5关(基本的9×9数独) 4、交流汇报。

标准数独“九宫”教案--完整版

数独教案 基本项目 课程名称:感受数独魅力 授课对象:三到六年级学生 课程类型:逻辑思维课 教学材料:自编纲要 教学时间:7课时 具体教学方案 一、指导思想 数学是神奇的世界,肯定有不少学生产生了浓厚的兴趣。为此,训练学生的思维活动是重中之重。数学思维活动在数学教学课堂中探求问题的思考、推理、论证的过程等一系列数学活动都是数学教学中实施思维训练的理论依据之一。因此,开展数独课程,能更好的促进学生数学思维能力的发展,符合课改的要求。 二、教学目标 1、尊重学生的主体地位和主体人格,培养学生自主性、主动性,引导学生在掌握数学思维成果的过程中学会学习、学会创造。 2、将数学知识寓于游戏之中,教师适当穿针引线,把单调的数学过程变为艺术性的游戏活动,让学生在游戏中学习在玩中收获。

3、课堂上围绕“趣”字,把数学知识容于活动中,使学生在好奇中,在追求答案的过程中提高自己的观察能力,想象能力,分析能力和逻辑推理能力。力求体现我们的智慧秘诀:“做数学,玩数学,学数学”。 三、教学措施 1、结合教材,精选小学数学的教学内容,以适应社会发展和进一步学习的需要。力求题材内容生活化,形式多样化,解题思路方程化,教学活动实践化。 2、教学内容的选编体现教与学的辨证统一。教学内容呈现以心理学的知识为基础,符合儿童认知性和连续性的统一,使数学知识和技能的掌握与儿童思维发展能力相一致。 3、教学内容形式生动活泼,符合学生年龄特点,赋予启发性,趣味性和全面性,可以扩大学生的学习数学的积极性。 4、每次数学思维训练课都有中心,有讨论有交流有准备。有阶段性总结和反思。 四、教学内容

数独初级入门课程

数独技巧

以下我们将叙述一道标准数独的全部解题过程,在此过程中涉及到的技巧有摒除法、余数法、区块法、数对法、X- Wing这几个常在数独书籍中会涉及到的技巧,文中将描述各个技巧的结构及作用效果,相信在看完解题过程之后,您能相当程度地掌握到数独的基本解题技巧,也能在解题的过程中发现数独给您带来的乐趣。 谜题如下图 第一招:摒除法 大家之前已阅读过数独的规则:在每个单元中,每个数字只能出现一次,那么也就意味着,如果一行已经出现了一个1,这行的其他格就不再有1,利用这个观点,引发出摒除法。 第1步:数字2对B1进行摒除

r1c8为2,则其所在R1不再有2; r2c4为2,则其所在R2不再有2; r9c2为2,则其所在C2不再有2, 在B1中还没有2,B1有6个空格可以填2,但其中5个空格被摒除了,只剩下r3c1,所以得到第一解:r3c1=2 这个方法因为是对宫实施摒除的,所以叫宫摒除法。宫摒除法是解题技巧里面最简单的一种,也是解题过程中使用最多的一种。其实解数独就是这么简单! 第2步:r1c3=7(宫摒余解,数字7对B1摒除) 第3步:r4c7=7(宫摒余解,数字7对B6摒除) , 第4步:数字7对C5进行摒除 r1c3为7;则其所在R1不再有7; r2c9为7,则其所在R2不再有7; r4c7为7,则其所在R4不再有7; r6c2为7,则其所在R6不再有7; r8c1为7,则其所在R8不再有7; r9c8为7,则其所在R9不再有7, 在C5中还没有7,C5有7个空格可以填7,但其中6个空格不能为7了,所以天元格r5c5=7 《 这个方法因为是对列实施摒除的,所以叫列摒除法,与其类似的还有行摒除法。行列摒除法也是很常用的方法。 见识了摒除法之后,大家是否尝试寻找另一个摒余解呢不好意思要给大家泼凉水了,因为这个盘势下已经找不到宫摒余解或者行列摒余解了,那怎么办呢,没关系,我们继续介绍其它的技巧。

数独的解法与技巧

数独的直观式解题技巧 直观法概说 前言 数独这个数字解谜游戏,完全不必要用到算术!会用到的只是推理与逻辑。刚开始接触数独时,即使是只须用到"基础摒除法"及"唯一解法"技巧的简易级谜题,就已可让我们焦头烂额了,但是随着我们深陷数独的迷人世界之后,这类简易级的数独谜题必定在短时间内难再使我们获得征服的满足。于是,当我们逐步深入、进阶到更难的游戏后,我们将会需要发展出更多的解谜技巧。虽然最好的技巧便是我们自己发现的窍门,这样我们很容易就能记住它们,运用自如,不需要别人来耳提面命。但是如果完全不去观摩学习他人发展出来的技巧,而全靠自己摸索,那将是一个非常坚苦的挑战,也不是正确的学习之道!所以让我们一齐来探讨数独的解谜方法吧! 数独的解谜技巧,刚开始发展时,以直观法为主,对于初入门的玩家来说,这也是一般人较容易理解、接受的方法,对于一般报章杂志及大众化网站上的数独谜题而言,如果能灵活直观法的各项法则,通常已游刃有余。 直观法详说 直观法的特性: 1.不需任何辅助工具就可应用。所以要玩报章杂志上的数独谜题时,只要有一枝 笔就可以开始了,有人会说:可能需要橡皮擦吧答案是:不用!只要你把握数 独游戏的填制原则:绝不猜测。灵活运用本站所介绍的直观填制法,确实可以 不必使用橡皮擦。

2.从接到数独谜题的那一刻起就可以立即开始解题。 3.初学者或没有计算机辅助时的首要解题方法。 4.相对而言,能解出的谜题较简单。 直观法的主要的技巧: 1.基础摒除法。 2.唯一解法。 3.区块摒除法。 4.唯余解法。 5.单元摒除法。 6.矩形摒除法。 7.余数测试法。 基础摒除法 前言 对第一次接触数独游戏,接受了 1 ~ 9 的数字在每一行、每一列、每一个九宫格都只能出现一次的规则后,开始要解题的玩家来说,基础摒除法绝对是他第一个想到及使用的方法,十分的自然、也十分的简易。 如果能够细心、系统化的运用基础摒除法,一般报章杂志或较大众化的数独网站上的数独谜题几乎全部可解出来。只不过大部分的玩家都不知如何系统化的运用基础摒除法罢了! 基础摒除法虽然简单,但在实际应用时,仍然可分成三个部分:

数独游戏 算法期末大作业

数独游戏 董猛 (宁波工程学院 电信学院,浙江 宁波 315010) 摘 要: 过对数独求解规则的分析,归纳总结一套有效的求解算法,以计算机直接模拟人脑的思维方式,逐个排除不可能出现在宫格中的数字。论文详细阐述了比较排除法的算法思想,画出程序流程图,并提供主要代码。实验证明算法是正确并高效的。 关键词: 数独 策略 搜索 Sudoku game Dong Meng (NINGBO UNIVERSITY OF TECHNOLOGY, Ningbo,Zhejiang,315000 C hina ;) Abstract: Logarithmic alone solve rule analysis, sum up a set of effective algorithm, in computer simulation of the human brain thinking directly, don't rule out one by one may appear in the GongGe Numbers. Paper illustrates the comparison method of algorithm thought, draw the procedure flow chart, and provides the key code. Experimental results show algorithm is correct and effective. Key words: Sudoku search strategy 1 引言 数独(すうどく,Sudoku )是一种运用纸、笔进行演 算的逻辑游戏。玩家需要根据9×9盘面上的已知数字,推 理出所有剩余空格的数字,并满足每一行、每一列、每一 个粗线宫内的数字均含1-9,不重复。 目前(截止2011年)发现的最少提示数9×9标准数 独为17个提示,截止编辑此词条时间(2011.11.24 16:14), 共发现了非等价17提示数谜题49151题。 独盘面是个九宫,每一宫又分为九个小格。在这八十 一格中给出一定的已知数字和解题条件,利用逻辑和推理, 在其他的空格上填入1-9的数字。使1-9每个数字在每一 行、每一列和每一宫中都只出现一次,所以又称“九宫格”。 图 1 数独图册 2 算法设计 2.1 数独算法描述 本文所设计的比较排除法是以计算机直接模拟人脑思维方式进行搜索,需要选取对象后作出对比排查。以人脑思维方式,对数独题目进行求解,必定先会选定某个已知的数字,对其在其他行列进行比较,直至确定另一个可放置的位置。如果一个数字已用尽已知条件9个位置都出现,或还有空缺但是却已经无法确定其位置,则跳至下一个数字进行下一轮的比较与确定。然而计算机无法进行此类比较。由于计算机无法选定已知数,所以让计算机从选定未知数开始排查,再进行逐格的一项项排除,直至完成数独题目。 该方法是根据数独游戏的出题原则,每格所填数字必须有根 据,故可确定总有格子是可以通过现有已知量进行推导的。 算法如下:(伪码描述、自然语言描述、流程图) int main() { ifstream fin(szDataFile);//读取数独初始化文件 if (!fin) { cout << "error in open files!\n"; return -1; } int i, j; for (i=0; i<9; i++) for (j=0; j<9; j++)

数独解题方法大全

数独解题方法大全 作者:扬子活力论坛泥瓦匠整理:隱讀書生数独这个数字解谜游戏,完全不必要用到算术!会用到的只是推理与逻辑。解题方法分两大类:直观法和候选数法。 直观法就是不需要任何辅助工具,从接到数独谜题的那一刻起就可以立即开始解题。绝不猜测。数独直观法解题技巧主要有:唯一解法、基础摒除法、区块摒除法、唯余解法、矩形摒除法、单元摒除法,余数测试法。 候选数法就是解数独题目需先建立候选数列表,根据各种条件,逐步安全的清除每个宫格候选数的不可能取值的候选数,从而达到解题的目的。 使用候选数法一般能解比较复杂的数独题目,但是候选数法的使用没用直观法那么直接,需要先建立一个候选数列表的准备过程。所以实际使用时可以先利用直观法进行解题,到无法用直观法解题时再使用候选数方法解题。 候选数法解题的过程就是逐渐排除不合适的候选数的过程,所以在进行候选数删除的时候一定要小心,确定安全的删除不合适的候选数,否则,很多时候只有重新做题了。有了计算机软件的帮助,使得候选数表的维护变得轻松起来。 数独候选数法解题技巧主要有:唯一候选数法、隐性唯一候选数法、区块删减法、数对删减法、隐性数对删减法、三链数删减法、隐性三链数删减法、矩形顶点删减法、三链列删减法、关键数删减法、关连数删减法。 一、直观法: 1、唯一解法: 当某行已填数字的宫格达到8个,那么该行剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为行唯一解。 当某列已填数字的宫格达到8个,那么该列剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为列唯一解。 当某九宫格已填数字的宫格达到8个,那么该九宫格剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为九宫格唯一解。 下面是例题: A行已经添入8个数字,A行只有数字3没有出现过,所以A9=3,这是行唯一解。 第1列已经添入8个数字,第1列只有数字5没有出现过,所以E1=5,这是列唯一解。

数独

数独术语 单元格和值 一个数独谜题通常包含有9x9=81个单元格,每个单元格仅能填写一个值。对一个未完成的数独题,有些单元格中已经填入了值,另外的单元格则为空,等待解题者来完成。 行和列数独 习惯上,横为行,纵为列,在这里也不例外。行由横向的9个单元格组成,而列由纵向的9个单元格组成。很明显,整个谜题由9行和9列组成。为了避免混淆,这里用大写英文字母和数字分别表示行和列。例如,单元格[G6]指的是行G和第6列交界处的单元格,它已填入了值7。区块术语区块指的是起始于特定位置的9个相邻的单元格组。在上图中,区块用交替相间的背景颜色来注明。 例如,对于最左上角的区块,我们表示为起始于[A1]的区块。单元任何一行,一列或一个区块都是一个单元。每个单元都必须包含全部但不重复的数字1到9。 折叠编辑本段发展历史 在数独出现之前,最流行的游戏有:魔方(Rubik'scubes)、俄罗斯方块(Tetris),甚至是超级玛丽(Mario)。但是这些都是风靡一时但又转瞬即逝的游戏。数独游戏的渊源比较久远,数独是一种源自18世纪末的瑞士,后在美国发展并在日本得以发扬光大的数学智力拼图游戏。 早在数千年前,中国人就发明了九宫图:在9个方格中,横行和竖行的数字总和是相同的。"数独"也不是什么新生事物,已经存在了数百年。18世纪,瑞士数学家莱昂哈德·欧勒发明了"拉丁方块",但并没有受到人们的重视。直到20世纪70年代,美国杂志才以"数字拼图"的名称将它重

新推出。日本随后接受并推广了这种游戏,并且将它改名为"数独",大致的意思是"独个的数字"或"只出现一次的数字"。 现今流行的数独于1984年由日本游戏杂志《パズル通信ニコリ》发表并得了现时的名称。数独本是"独立的数字"的省略,因为每一个方格都填上一个非零的个位数。数独冲出日本成为英国当下的流行游戏,得归功于曾任香港高等法院法官的高乐德(Wayne Gould)。2004年,他在日本旅行的时候,发现杂志上介绍的这款游戏,便带回伦敦向《泰晤士报》推介并获得接纳。英国《每日邮报》也于三日后开始连载,使数独在英国正式掀起热潮。数独不仅是报章增加销量的法宝,脑筋动得快的《泰晤士报》还做起手机族的生意,花4.5英镑就能下载10则数独游戏到手机上玩。渐渐,其他国家和地区受其影响也开始风靡数独。 同类似的填字游戏不同,数独受欢迎的原因之一是它既不需要丰富的百科知识,也不要掌握大量的词汇,这使其能迅速为孩子和初学者所接受。根据游戏开始时的方格中已有的数字和位置,数独难易程度不同,有些复杂的甚至令数学家也不能完成。据著名的动游戏开发商Astraware Ltd.预计,移动数独游戏的版本多达几十种,Palm和Windows Mobile设备版本的数独游戏就各有20种左右。Sudokumo推出的移动数独游戏,能够下载到大多数手机中。这家位于英国的游戏软件公司表示,已经在全球卖出了7500套数独游戏,而且来自用户的兴趣还在增加。 折叠编辑本段游戏技巧 对于普遍使用的9x9谜题而言,大量涌现的变形数独题也在不断丰富着数独家族。 一种比较常见的数独变形是大小上的改变。现在已有的大小包括:4x4,6x6,9x9,12x12,16x16,25x25,甚至还有100x100 另一种数独变形题是在原数独规则的基础上加入其他的规则。譬如X形数独就要求除原来的数独规则外,连主对角线上的单元格也要满足数字1到9的

数独游戏的算法研究与实现

"数独"游戏的算法研究与实现 作者:李盘荣, LI Pan-tong 作者单位:无锡市广播电视大学,江苏,无锡,214011 刊名: 电脑知识与技术 英文刊名:COMPUTER KNOWLEDGE AND TECHNOLOGY 年,卷(期):2008,3(26) 引用次数:0次 参考文献(4条) 1.今天,你数独了吗?(NO.19)[期刊论文]-快乐青春 2007(11) 2.严蔚敏.吴伟比数据结构 1993 3.谭浩强C程序设计 2005 4.刘晓宝数独游戏的解题算法[期刊论文]-电脑编程技巧与维护 2007(5) 相似文献(3条) 1.学位论文谭志明基于图论的图像分割及其嵌入式应用研究2007 图像分割是一种底层的图像处理技术,它根据特定的特征将图像分离为连通的有意义区域,可以广泛应用在图像及视频的高级处理任务中。图像分割技术经过几十年的发展,形成了众多的方法、繁杂的类别和海量的文献,但是与人眼视觉特征相一致的全局分割问题一直得不到解决。在这些方法中,基于图论最小生成树的方法利用区域比较准则和最小生成树算法分割图像,具有获取全局特征的能力,计算速度快,是一种可以作为应用研究的分割方法之一。本文的工作主要基于此算法。 为了提高此算法应用的可能性,我们需要更改算法及优化程序,提高其全局分割效果和计算速度。本文在分析基于最小生成树分割算法概念、原理、数据结构和实现方式的基础上,发现其运算瓶颈为边的数目,也就是图中实际计算的节点数目。因此本文利用图像局部特征相似的特性,使用N×N,N=1,2,3大小的自适应像素块映射为单个计算节点,大大降低了实际计算的节点和边的数目,从而降低了核心算法的计算复杂度。 为了适应块结构,本文更改了邻域系统,提出了基本连接和超连接的层次。基本连接保证了相邻区域的邻近性,而超连接提供了区域之间的连续性。这种两层的连接方式提高了算法获取全局特征的能力,获得了既不过分割也不欠分割的效果,接近图像对象的数目,减少了原算法分割区域的数目。另外,为了分析基于最小生成树算法的结构,本文将其分为三个阶段:前处理、核心算法和后处理。原算法大部分的计算负担集中在核心算法上,算法结构极不均衡。因此,本文在保证三个阶段接口不变的基础上,将构造图的过程从核心算法阶段转移到前处理阶段,均衡了计算量,增加了算法并行处理的能力。 图像进行分层分析和表达由来已久,具有在不同分辨率下表现图像内容的优势。金字塔图像分割方法是一种分层的分析方法,其突出优点是可以累积局部特征,从而表现全局特征。金宁塔分为规则金宁塔和非规则金字塔,后者可以克服前者的刚性特点,与图像内容相适应,成为金字塔图像分割算法的主要实现形式。人们提出了不同的非规则金字塔数据结构和缩减方法,但足大多数比较复杂。本文利用基于最小生成树分割算法计算速度快、结构简单、有效进行区域比较的优势,将其作为缩减核应用到非规则金字塔结构中,形成一种快速有效的块嵌入非规则金字塔分割算法。为了将金字塔高度控制在合理范围内,提高缩减因子,本文在第零层使用块结构加快其收敛速度,并提出了一种快速的邻近区域搜索方法以有效地构造高一层的边。试验结果表明,新的算法具有良好的分割效果和计算速度。 块嵌入非规则金字塔分割算法使用区域的特征平均值代替父节点的特征值,降低了噪声对算法的影响,从而无需额外的去噪方法,消除了原算法的高斯滤波参数。本文使用权重的最大最小差值代替原算法抑制小区域的参数,可以在每层上自动适应图像的特征。另外,在构造块结构的过程中,本文使用图像的标准差作为比较准则,从而无需输入块构造参数。金字塔累积局部特征的本质可以去除合并小区域的步骤,从而消除了最小区域参数。本文的这些工作使块嵌入非规则金字塔分割算法成为一个参数独立的自动分割算法,有利于实际应用。 良好的分割效果与快速计算速度使分割算法进行实时应用成为可能。本文在高清数字电视解码器片上系统平台软硬件工作的基础上,分析了基于MIPS处理器的嵌入式平台在时间和空间上的运算资源优化,尝试将基于最小生成树的图像分割算法进行嵌入式移植。在回顾算法改进的基础上,本文对程序代码进行运行时间和空间上的优化,包括运行时间剖析、缓存优化、调用关系优化和动态内存分析等 ,以软件IP的形式移植到基于MIPS开发平台Malta板上。分割程序建立在一个嵌入式软件系统上,包括启动程序、Linux操作系统、API和库等,以主机控制目标板的方式运行,通过网络远程读写图像文件。 2.期刊论文雷蕾.沈富可.LEI Lei.SHEN Fu-ke关于数独问题的算法的设计与实现-电脑知识与技术(学术交流)2007,1(2) 数独问题(Sudoku)是十八世纪瑞士数学家欧拉提出的、近年来风靡全球的一种智力游戏.本文通过分析数据结构、函数、以及"有限递推"预处理算法和回溯算法,深入探讨了数独问题的解决方案,并给出了该方案的具体实现. 3.学位论文马晓磊OMR技术在选举工作中的应用研究1999 该文试图通过对"计算机选举系统"硬件及软件设计的论述,研究OMR技术在选举工作中的应用,旨在讨论利用OMR技术开发应用系统的一般途径和方法,开拓OMR技术更广的应用范围.围绕系统的核心OMR,该论文分析了自动识别统计选票的原理和过程,阐述了外围支持环境,包括硬件电路设计、机械传动机构设计、选票的标准化设计和软件的编制及规范化等基础理论研究工作的思路及过程,建立了系统系结构的整体概念.作者首次制订了选票的详细设计规则,确定了网络数据的传输机制,分析确定了文件数据结构,首次提了并定义了选举和选票格式的若干参数,独立编制了监控程序、数据处理程序、调试工具程序等软件,规范和整理了控制、通讯等程序、数据处理程序、调试工具程序等软件,规范和整理了控制、通讯等程序.对软件的各顶主要功能做了详细介绍.在编码过程中,采用了扩展小字库.对软件的各顶主要功能做了详细介绍.在编码过程中,采用了扩展小字库、汇编嵌套等等多种技术技巧.该论文还从数据采集的角度,讨论了光电管在动态条件下,对边框的测量宽度和频率问题,针对在宽度和频率受限的情况下,如何减少随机误差产生的可能性,介绍了"跟踪判断"技术的原理.最后,论文提出了系统今后需要继续研究和解决的几个问题. 本文链接:https://www.360docs.net/doc/4116175594.html,/Periodical_dnzsyjs-itrzyksb200826042.aspx 下载时间:2010年5月4日

数独入门 你必须掌握的那些规则和技巧

数独入门:你必须掌握的那些规则和技巧 数独的规则 在空格内填入数字1-9,使得每行、每列和每个宫内数字都不重复。 注意:数独题目满足条件的答案是唯一的。

数独的元素 数独的元素主要包括行、列和宫。这三者划分出数独有三种不同形态的区域,而数独规则就是要求在这些区域内出现的数字都为1~9。 元素坐标图: 行:数独盘面内横向一组九格的区域,用字母表示其位置; 列:数独盘面内纵向一组九格的区域,用数字表示其位置; 宫:数独盘面内3×3格被粗线划分的区域,用中文数字表示其位置。 格的坐标:利用表示行位置的字母和表示列位置的数字定位数独盘面内每个格子的具体位置,如A3格,F8格等。 数独技巧 1.?宫内排除法 排除法就是利用数独中行、列和宫内不能填入相同数字的规则,利用已出现的数字对同行、同列和同宫内其他格进行排斥相同数字的方法。 宫内排除法就是将一个宫作为目标,用某个数字对它进行排除,最终得到这个宫内只有一格出现该数字的方法。技巧示意图:

宫内排除法 如上图所示,A2、B4和F7三格内的1都对三宫进行排除,这时三宫内只有C9格可以填入1,本图例就是对三宫运用的排除法。 2.?行列排除法 行列排除法就是将一行或一列作为目标,用某个数字对它进行排除,最终得到这个行列内只有一格出现该数字的方法。技巧示意图:

行列排除法 如上图所示,D2和B8两格内的6都对F行进行排除,这时F行内只有F5格可以填入6,本图例就是对F行运用的排除法。 3.?区块排除法 区块排除法就是先利用宫内排除法在某个宫内形成一个区块,利用该区块的排除再结合其他已知数共同确定某宫内只有一格出现该数字的方法。技巧示意图: 区块排除法 如上图所示,B4格的7对五宫进行排除,在五宫内形成了一个含数字7的区块。无论该区块中F5格是7还是F6格是7,都可以对F行其他格的7进行排除。再结合H7格的7同时对六宫进行排除,得到六宫内只有D8格可以填7。 4.?宫内数对占位法 数对占位法指的是在某个区域中使得某两数只能出现在某两格内,这时虽然无法判断这两个数字的位置,但可以利用两数的占位排斥掉其他数字出现在这两格,再结合排除法就可以间接填出下个数字。技巧示意图:

数独解题方法大全

数独解题方法大全 首先,数独候选数法解题技巧主要有:唯一候选数法、隐性唯一候选数法、区块删减法、数对删减法、隐性数对删减法、三链数删减法、隐性三链数删减法、矩形顶点删减法、三链列删减法、关键数删减法、关连数删减法。 数独这个数字解谜游戏,完全不必要用到算术!会用到的只是推理与逻辑。解题方法分两大类:直观法和候选数法。 直观法就是不需要任何辅助工具,从接到数独谜题的那一刻起就可以立即开始解题。绝不猜测。数独直观法解题技巧主要有:唯一解法、基础摒除法、区块摒除法、唯余解法、矩形摒除法、单元摒除法,余数测试法。 候选数法就是解数独题目需先建立候选数列表,根据各种条件,逐步安全的清除每个宫格候选数的不可能取值的候选数,从而达到解题的目的。 使用候选数法一般能解比较复杂的数独题目,但是候选数法的使用没用直观法那么直接,需要先建立一个候选数列表的准备过程。所以实际使用时可以先利用直观法进行解题,到无法用直观法解题时再使用候选数方法解题。 候选数法解题的过程就是逐渐排除不合适的候选数的过程,所以在进行候选数删除的时候一定要小心,确定安全的删除不合适的候选数,否则,很多时候只有重新做题了。有了计算机软件的帮助,使得候选数表的维护变得轻松起来。 一、直观法: 1、唯一解法: 当某行已填数字的宫格达到8个,那么该行剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为行唯一解。 当某列已填数字的宫格达到8个,那么该列剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为列唯一解。 当某九宫格已填数字的宫格达到8个,那么该九宫格剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为九宫格唯一解。 下面是例题: A行已经添入8个数字,A行只有数字3没有出现过,所以A9=3,这是行唯一解。 第1列已经添入8个数字,第1列只有数字5没有出现过,所以E1=5,这是列唯一解。

数独解题技巧

数独解题技巧 1.直观法 (1)单元限定法:此处的单元指的是行、列或者是小九宫格。使用此种方法时有三种情况:当某行、列、小九宫格有八个单元格中已有数字,空白处必定为唯一 缺少的数字。 (2)单元排除法:在某一单元(行、列、小九宫格)中找到能填入某一数字的唯一位置,也就是把单元中其他的空白位置都排除掉。 (3)区块排除法: a)当某数字在某个小九宫格中可填入的位置正好都在同一行上,因为该小九宫格 中必须要有该数字,所以这一行中不在该小九宫格内的单元格上将不能再出现 该数字。 b)在某数字在某个小九宫格中可填入的位置正好都在同一列上,因为该小九宫格 中必须要有该数字,所以这一列中不在该小九宫格内的单元格上将不能再出现 该数字。 c)当某数字在某行中可填入的位置正好都在同一小九宫格上,因为该行中必须要 有该数字,所以该小九宫格中不在该行内的单元格上将不能再出现该数字。 d)当某数字在某列中可填入的位置正好都在同一小九宫格上,因为该列中必须要 有该数字,所以该小九宫格中不在该列内德单元格上将不能再出现该数字。 (4)唯一余解法:如果某一单元格所在的行、列、小九宫格中共出现了八种不同的数字,那么该单元格可以确定地填入还未出现过的数字。 (5)矩形排除法:如果一个数字在某两行中能填入的位置正好在同样地两列中,则这两列上其他的单元格中将不能再出现这个数字;或者如果一个数字在某两列 中能填入的位置正好在同样地两行中,则这两行的其他的单元格中将不能再出 现这个数字。 (6)直观扫描法 (7)逐行、逐列扫描法 2.候选数法 (1)显示唯一法:扫描候选数栅格表,如果哪个单元格中只剩下一个候选数,就可以应用显示唯一法,在该单元格中填入这个数字,并在相应行、列、小九宫格 的候选数中删除该数字。 (2)隐式唯一法:若一个单元格内德候选数不止一个,但该单元格所在的行、列、小九宫格内,只有它含有某一个数字,那么这个单元格就可以直接填这个数字。 (3)显式对法:指在一个行、列、小九宫格中,如果有两个单元格都包含且只包含相同的两个候选数,则这两个候选数字不能再出现在该行、列、小九宫格的其 他单元格的候选数中。 (4)隐式数对法:在同一行、列、小九宫格中,如果一个数对(两个数字)正好只出现且都出现在两个单元格中,则这两个单元格的候选数中的其他数字可以被 删除。其他候选数被删除后,隐式数对就变成了显式数对。 (5)矩形顶点法:当某个候选数在某两行(列)仅出现相同两列(行)上,则这个候选数就可以从这两列(行)的其他单元格上删除掉。

数独中的数学模型

数独中的数学模型 摘要 现如今数独游戏风靡全球,深受人们喜爱。其难度等级多样,求解数独难度 等级较高的常常需要花费大量的时间和精力,因此我们试图用计算机来解决这一 问题。 在问题一中,我们主要考虑空格数的多少以及空格自由度与数独难度等级的 关系。由一定的案例分析得出数独题目的难度等级与空格数存在正比关系,接着 我们考虑如果只是简单的按照空格的数目多少来划分数独题目的难易程度是不 全面的,因此继续分析,得出空格自由度与数独的难度等级存在正比的关系,最 后又以空格数和空格自由度综合分析进行验证,得出此数独等级为3级。[1] 空格自由度法模型如下: 在问题二中,我们运用穷举法分析大量可能情况,再用MATLAB编写程序得 出此数独游戏的终盘。 在问题三中,我们运用了比较排除法、唯一解法和综合法来求解此数独游戏,最终选用综合法作为较优方法。[1] 在问题四中,我们用循环回溯法进行求解,使用MATLAB编写程序得出结果(见表8)。[1] 关键字:穷举法比较排除法唯一解法循环回溯法数独空格数空格自由度 一、问题背景 数独是一种数字解谜游戏,英文名叫Sudoku,前身为“九宫格”,当时 的算法比现在的更为复杂,要求纵向、横向、斜向上的三数之和等于15, 而不只是数字的不能重复,儒家典籍《易经》中的“九宫图”也是来源于此。关于它的起源一直存有争议,有人认为最早起源于中国,也有人认为起 源于瑞士。1970年由美国一家数学逻辑游戏杂志首先发表,名为Number。后在 日本流行,于1984年把Sudoku取名为数独。数独全面考验做题者观察能力和逻 辑推理能力,它的玩法逻辑简单,除了1到9的阿拉伯数字以外,不必用到 任何东西,但数字的排列方式却又千变万化,不少教育者认为,数独是锻炼大 脑的绝佳方式。它不仅具有很强的趣味性,也是一种对智慧和毅力的考验。 二、问题重述 芬兰一位数学家号称设计出全球最难的“数独游戏”,并刊登在报纸上, 让大家去挑战。这位数学家说,他相信只有“智慧最顶尖”的人才有可能破解这 个“数独之谜”。 所给数独游戏表格如下: 据介绍,目前,数独游戏难度的等级有一到五级,一是入门等级,五则比较难。不过这位数学家说,他所设计的数独游戏难度等级是十一,可以说是所有数 独游戏中,难度最高的等级。 数独是根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足 每一行、每一列、每一个粗线宫内的数字均含1-9,不重复。每一道合格的数

数独入门教程

数独入门教程 数独是一种填数的小游戏,从出现到现在已有几十年的历史了,从最初刊登到报纸和书籍上,现在搬到电脑上,玩起来更加方便了。这篇数独游戏的入门篇,对于初学者有很大帮助。 一、数独(SuDoku)介绍 数独是一种源自18世纪末的瑞士,后在美国发展、并在日本得以发扬光大的数学智力拼图游戏。拼图是九宫格(即3格宽×3格高)的正方形状,每一格又细分为一个九宫格。在每一个小九宫格中,分别填上1至9的数字,让整个大九宫格每一列、每一行的数字都不重复。 数独的玩法逻辑简单,数字排列方式千变万化,数独是锻炼脑筋的好方法。 历史 如今数独的雏型首先于1970年代由美国的一家数学逻辑游戏杂志发表,当时名为Number Place。现今流行的数独于1984年由日本游戏杂志《パズル通信ニコリ》发表并得了现时的名称。数独本是“独立的数字”的省略,因为每一个方格都填上一个个位数。 数独冲出日本成为英国当下的流行游戏,多得曾任香港高等法院法官的高乐德(Wayne Gould)。2004年,他在日本旅行的时候,发现杂志的这款游戏,便带回伦敦向《泰晤士报》推介并获得接纳。英国《每日邮报》也于三日后开始连载,使数独在英国正式掀起热潮。其他国家和地区受其影响也开始连载数独。 数独术语 要理解如何对一个数独题求解,我们先来介绍一些在本网站中使用的术语。 单元格和值 一个数独谜题通常包含有9x9=81个单元格,每 个单元格仅能填写一个值。对一个未完成的数 独题,有些单元格中已经填入了值,另外的单 元格则为空,等待解题者来完成。 行和列 习惯上,横为行,纵为列,在这里也不例外。 行由横向的9个单元格组成,而列由纵向的9 个单元格组成。很明显,整个谜题由9行和9列组成。为了避免混淆,这里用大写英文字母和数字分别表示行和列。例如,单元格[G6]指的是行G和第6列交界处的单元格,它已填入了值7。

数独解法技巧

数独解法(一) 九宫格摒除解 对第一次接触数独游戏,接受了1~9的数字在每一行、每一列、每一个九宫格都只能出现一次的规则后,开始要解题的玩家来说,基础摒除法绝对是他第一个想到及使用的方法,十分的自然、也十分的简易。如果能够细心、系统化的运用基础摒除法,一般报章杂志或较大众化的数独网站上的数独谜题几乎全部可解出来。只不过大部分的玩家都不知如何系统化的运用基础摒除法罢了! 基础摒除法虽然简单,但在寻找解的过程中,仍然要分成三个部分:寻找九宫格摒除解、寻找列摒除解、寻找行摒除解。不要说是初入门者,即使是很多未接受过本讯息者,也常常会遗漏了行、列摒除解的寻找。对一些粗心的玩家来说,即使是九宫格摒除解也常被跳着做,所以解起题来就会感到不是十分顺手。 1.九宫格摒除解的寻找 九宫格摒除解的系统寻找是由数字1开始一直到数字9,周而复始,直到解完全题或无解时为止;每个数字又需从上左九宫格起,直到下右九宫格,周而复始,同样要不断重复到解完全题或无解时为止。

<图2.1.1> 以<图2.1.1>的解题为例:先从数字1开始,并由上左九宫格起寻找九宫格摒除解,会影响上左九宫格的数字,一定存在第1列~第3列以及第1行~第3行如<图2.1.2>的绿色区域。 <图2.1.2> 本区域已存在的数字1共有两个,它们分别存在(2,9)及(5,1);其中(2,9)的1将摒除第2列其它宫格再填入数字1的可能,因为依照规则每一列只能有一个数字1,如果再在本列填入数字1,那么本列就会有两个1了。同理,(5,1)的1则将摒除第1行其它宫格再填入数字1的可能,其示意图如<图2.1.3>。

<图2.1.3> 对上左九宫格的摒除仅能到此地步,我们可以很容易的发现:本九宫中还有3个宫格不在被摒除的区域中,意即:这3个宫格都仍有可能填入数字1,依不可猜测的原则,本九宫格暂时不予处理。 接下来我们要尝试在上中九宫格寻找是否有九宫格摒除解1:会影响上中九宫格的数字,一定存在第1列~第3列以及第4行~第6行。本区域已存在的数字1共有3个,它们分别存在(2,9)、(4,6)及(9,5),其摒除的范围示意图如<图2.1.4>。 <图2.1.4>

相关文档
最新文档