`
ihuashao
  • 浏览: 4704963 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

数独的解决方案

阅读更多

<!-- by Frank -->

  坐在可颂坊休息的时候,她问我有没有做过数独,我说做过。
  她竟然掏出一本书,说感兴趣的话做做看。挑了一个,做了十来分钟,无果。算了,不做了,本来就是通过穷尽的方式来达到解答的目的,既然能用机器去做,我实在是不愿动脑子。于是,向她许诺回去后写个可以解决数独问题的程序。
  在此,与大家共享源代码和程序。点击此处下载
  一个很简单的程序,在算法上我没有做任何优化。
  
  如何使用:
  解压缩Sudoku.zip,确保所需的文件sudoku.exe和input.txt放在同一个目录中。
  打开input.txt文件,输入数独题目:每行输入9个数字,要填的数字用0代替,共输入9行。
  例如,对于如下题目:
  Sudoku题目
  可以在input.txt文件中输入:
  0 0 1 0 8 0 0 0 0
  0 2 0 0 0 0 4 0 0
  0 0 9 0 0 7 0 8 0
  0 5 0 0 3 0 0 0 1
  0 4 0 0 0 0 0 5 0
  7 0 0 0 0 9 0 6 0
  0 7 0 5 0 0 2 0 0
  0 0 2 0 0 0 0 3 0
  0 0 0 0 4 0 8 0 0

  保存,然后关闭文件input.txt。
  双击运行sudoku.exe,程序一闪而过。此时目录下面多了个文件ouput.txt,这个文件里面就是答案。:)

分享到:
评论

相关推荐

    数独验证器_sudoku验证器_数独验证_数独_

    本项目提供了一个数独验证器,用于检查给定的数独解决方案是否正确。 数独验证器的核心功能是验证数独的唯一性和完整性。首先,验证器会检查每一行是否有重复数字,如果在任何一行中发现有重复的数字,那么这个数独...

    数独-解决方案

    数独 游戏解决方案 C 语言 结果存入文件 “厨师数据”中

    PracticeMultithreadedSudokuValidator:一个数独解决方案验证器,用于演示C ++中的多线程

    PracticeMultithreadedSudokuValidator:一个数独解决方案验证器,用于演示C ++中的多线程

    matlab开发-是其他数独问题解决方案

    总的来说,这个MATLAB项目提供了一个完整的数独解决方案,不仅允许用户直接解决预设的数独题目,还支持用户自定义谜题并使用半自动或全自动方式求解。通过学习和分析这个项目,可以深入理解MATLAB的GUI编程、回溯...

    pay-to-sudoku, 用零知识支付支付一个数独游戏的解决方案.zip

    pay-to-sudoku, 用零知识支付支付一个数独游戏的解决方案 pay-to-sudoku作者: Sean Bowe这项工作在 Financial Financial Financial /zero-knowledge-contingent-payments-announcement/。 感谢 G

    sudokogenetico:通过遗传算法的数独解决方案

    计算机科学背景下的数独解决方案 在标准形式下,数独是由包含3x3子网格的9x9网格构成的逻辑游戏。 一些正方形已经预先填充了1到9之间的数字。游戏的目的是填充整个网格,而在9x9网格的行和列中均不重复任何数字。每...

    Linux下多线程判断九宫格是否有效

    简单的多线程编程,为了判断数独结果是否有效,把整个任务分解成几个可并行执行的子任务,然后把这些任务分配给多个线程。在这里,我们创建了11个线程,1~9个线程分别判断九个宫内的数字是否不重复,第10个线程判断...

    c#实现数独

    通过以上步骤,我们可以构建一个功能完善的C#数独解决方案,不仅可以用于解决给定的数独谜题,还可以作为学习编程和逻辑思维的工具。在实际开发中,还可以考虑增加更多功能,如生成随机数独、保存和加载游戏状态等,...

    整数规划的数独解决方案:该程序通过二进制整数规划解决数独-matlab开发

    解压并运行这个`.m`文件,用户可以输入预填充的数独部分,程序会自动计算出完整的数独解决方案。 总的来说,通过MATLAB的二进制整数规划方法,我们可以高效地解决数独问题,避免了使用传统的回溯法或递归等算法。...

    Sudoku-Solver-Visualization:递归数独解决方案算法的可视化

    标题中的"Sudoku-Solver-Visualization"是一个项目,它实现了用Python编写的一个递归数独解决方案算法,并通过可视化方式展示了解决过程。这个项目利用了Python的pygame库来创建交互式的图形用户界面,使得用户可以...

    解决数独问题的两种方法_exactlyipp_数独解决方法_wagonpcn_启发式_数独_

    在wagonpcn的数独解决方案中,可能已经融合了这些策略。通过分析代码和理解其工作原理,我们可以学习如何设计更高效的问题解决策略。无论选择哪种方法,理解数独问题的核心逻辑和解题策略都是至关重要的。 总之,...

    数独游戏---自写算法。随即生成数独

    2. 实现数独生成器:随机生成一个完整的数独解决方案,然后通过删除部分数字生成一个残局。 3. 检查逻辑:编写函数检查当前填入的数字是否合法,即所在行、列和小宫格内没有重复。 4. 回溯算法:当用户填入数字后,...

    基于挖洞思想的数独游戏生成算法

    数独游戏的生成算法是其核心,而挖洞思想是一种创新的数独生成方法,其基本原理是先生成一个完整的数独解决方案,然后通过特定的规则逐渐删除一些数字,使得解决方案变成一个数独谜题,同时保证该谜题有一个唯一的...

    数独计算器第二版

    《数独计算器第二版》是一款专为数独爱好者设计的高效工具,它集成了数独题目生成、自动解题和分步计算等多种功能,旨在提供一个全面的数独解决方案。这款软件不仅能够自动生成具有绝对唯一解的数独题目,满足用户在...

    数独编程实例

    Ruby的数独解决方案可能更加注重代码的可读性和简洁性,利用其强大的面向对象特性,将每个数独单元格封装为对象,然后通过对象的方法来处理逻辑。 每个编程语言的实现都会提供不同的思路和技巧,比如错误处理、数据...

    用Java实现N*N的标准数独及对角线数独解题

    以下是一个基本的数独解决方案的核心步骤: 1. **定义数独模型**:创建一个二维数组来表示数独盘面,每个元素代表一个单元格,可以为空或已填入的数字。 ```java int[][] sudoku = new int[N][N]; ``` 2. **初始...

    快速计算任意数独题

    至于“SigleNumber”,这个名字可能是博主提供的源码文件名,可能是一个特定的函数或者类,用于处理单个数字或者是在数独解决方案中的某一步骤。在数独解决过程中,可能有一个步骤是检查并确保每个单元格只包含一个...

    数独解法产生程序

    "数独解法产生程序"的目标就是利用计算机算法解决数独问题,给定一个不完整的数独数组,程序将自动填充缺失的数字,生成完整的数独解决方案。 在这个程序中,通常会采用回溯算法或者递归的方式来解决数独问题。下面...

    数独游戏源码

    这个过程涉及到生成一个完整的数独解决方案,然后进行部分填充,以形成一个具有唯一解的不完整数独盘面。生成算法通常需要确保在合理的时间内完成,这里提到大多数题目能在1秒内生成,表明算法设计考虑了效率,但也...

    数独程序算法,有用的算法

    在编程领域,实现数独解法通常涉及算法设计,本项目提供了一个基于Java的数独解决方案。 首先,我们需要理解数独问题的本质是一个回溯搜索问题,可以采用深度优先搜索(DFS)策略来解决。DFS是一种遍历或搜索树或图...

Global site tag (gtag.js) - Google Analytics