日期:2020.02.12

博客期:152

星期三

  

  老师给的任务都做完了,15篇博客也都写好了,剩下的几天居然还要每天写一篇~唉~为难我 PH ,剩下的几天就把 我的数独要义分享一下吧!

  1、基本局规则

    数独表是一个 9 X 9 的宫格!其中对这个 81宫格 的每一种划分的区块内,标注着不重复的 1 ~ 9 数字!

    一共有三种划分方法:

      第一种——像上面的图一样,中间的粉线把 81 宫格分成了 9 个 九宫格!

      第二种——上面的每一行都看作一个区块(上面的八条横线,将 81宫格 划分成 9 行 )

      第三种——上面的每一列都看作一个区块(上面的八条竖线,将 81宫格 划分成 9 列)

    将上述三种划分的区块里 1~9数字不重复的填入,这就是我们数独游戏的内容了!(其实我不知道怎么玩,也没有看过规则,这是自己总结的)

  2、我的开局思路

    (a). 首先需要找到表格上未填入的数字每一种有多少个,找到剩余未填数目最少的那一个(如上图就是 6 ,它剩余 5 个是没有填的)

    (b). 我们看看有什么地方可以填入 6

    (c). 看右上角的九宫格,由于它的下面两个九宫格都有 6,分析得出结论——左上角的 6 应该在 这个九宫格的第 2 列,然后分析行,得出结论——左上角的 6 应该在这个九宫格的第 1 行 或 第 3 行,综上所述 6 的坐标应该是 (1,2) 或 (3,2)位置【九宫格内】!因为 (3,2)位置已经有了数字 4,所以 6 应该在 (1,2)位置。

     (d). 同理,找到其余结果。(剩下的两个九宫格里的 6 没有办法找到,因为是有 2 种可能,所以我们只标记一下)

    (e).可以继续选择去找下一个(除了已经处理过的 6 以外)剩余数目最小的数字,去操作。

    (f). 然后我就发现,做不动了!怎么办呢?我们可以根据 竖列的性质来做,因为每一竖列划分也是不能 同为一值 的。(比如最右方 1 6 4 已经占领了右下九宫格的最后一列,所以我们的 2 只能在前两列出现,但是右上九宫格的 2 出现在了第一列,所以 2 只能在右下九宫格的 (2,3) 位置了)。

    (g). 还有呢?我们可以做横列分析这个是比较笨的方法,我能不用就不用!

      原理——一个位置可能出现的数值集合 = {1,2,3,4,5,6,7,8,9} - {在这一行出现过的数值} - {在这一列出现过的数值} - {在这一个九宫格出现过的数值},当这个集合只能有 1个数值的时候我们就可以做判断了。

      适用范围——当某一行和某一列的出现过的数值集合相差较大时,以及某一个划分已经有8个数值填好了的情况。

      举例——上面图中的 8 号位置的 7 号位所在行出现数值集合 = {2,3,4,5,6},列对应集合 = {1,5,6,7,9},所以只能填 8 了。

    (h). 那这样就可以了吗?显然不是这样!看下图的提示位置实际上能出现的值里没有 9,为什么呢?因为 1 号位 九宫格的 6 号位是 9 所以 第 3 列是不可能有 9 的,进而确定了 7 号位九宫格的 9 只能出现在 (3,1) 和 (3,2) 位置,也就是说第 3 行,所以自动绑定了 8、9 号位的九宫格内 9 不能出现在 第 3 行!同理,可以得到 9 号位九宫格的 9 只能出现在 第三列。

   (i). 特别的还有 多项对应,就是比如 有 3 个位置, 第一个位置可能取值于 {1,2,3}中的一个,而第二第三位置可能取值{2,3}中的一个!那么第一个位置只可能是 1!

Steam 游戏 《Sudoku Universe(数独宇宙)》——[数独基本局分析]的更多相关文章

  1. Steam 游戏 《Sudoku Universe(数独宇宙)》、《Sudoku Killer(数独杀手)》、《Sudoku Jigsaw(数独拼图)》数字位置解析 ---------C# 数独程序解析(2020年寒假小目标11)

    日期:2020.02.11 博客期:151 星期二 今天,准备肝一个 C# 的数独读写工具(汇编语言也在努力学习命令方法中...),这三个游戏我早就买下了,一直放在 Steam 库里积灰,看着它的成就 ...

  2. Steam游戏黑屏与游戏直接安装方法

    黑屏原因主要是360禁止了反作弊进程,解决方法: Steam游戏目录: Steam\steamapps\common\*** 例如黎明杀机,备份时候可直接备份该目录下 Dead by Daylight ...

  3. 基于steam的游戏销量预测 — PART 1 — 爬取steam游戏相关数据的爬虫

    语言:python 环境:ubuntu 爬取内容:steam游戏标签,评论,以及在 steamspy 爬取对应游戏的销量 使用相关:urllib,lxml,selenium,chrome 解释: 流程 ...

  4. Steam游戏《Nine Parchments(九张羊皮纸)》修改器制作-[先使用CE写,之后有时间的话改用C#](2020年寒假小目标02)

    日期:2020.01.09 博客期:122 星期四 [温馨提示]: 只是想要修改器的网友,可以直接点击此链接下载: 只是想要部分CT文件的网友,可以直接点击此链接下载: 没有博客园账号的网友,可以将页 ...

  5. Steam游戏《Northgard(北境之地)》修改器制作

    日期:2021.06.07 博客期:181 星期一 [温馨提示]: 我现在把资源先放到开头,不想研究学习的就直接取用.如果修改器失效了,你们可以在博客园本页直接评论,也可以给我发邮件告诉我,就是不要到 ...

  6. 自制Unity小游戏TankHero-2D(4)关卡+小地图图标+碰撞条件分析

    自制Unity小游戏TankHero-2D(4)关卡+小地图图标+碰撞条件分析 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm ...

  7. [Leetcode 37]*数独游戏 Sudoku Solver 附解释

    [题目] 每一行.每一列.每个3*3的格子里只能出现一次1~9. [思路] 参考了思路,附加了解释. dfs遍历所有非空格子,n是已经填好的个数. 初始化条件.n=81,都填了,返回结束.对于已经填好 ...

  8. HDU 1426 Sudoku Killer【DFS 数独】

    自从2006年3月10日至11日的首届数独世界锦标赛以后,数独这项游戏越来越受到人们的喜爱和重视. 据说,在2008北京奥运会上,会将数独列为一个单独的项目进行比赛,冠军将有可能获得的一份巨大的奖品— ...

  9. LeetCode 37 Sudoku Solver(求解数独)

    题目链接: https://leetcode.com/problems/sudoku-solver/?tab=Description   Problem : 解决数独问题,给出一个二维数组,将这个数独 ...

随机推荐

  1. Intellij-Idea使用小细节

    SpringMVC项目部署到tomcat中文乱码,tomcat的配置里面加上 -Dfile.encoding=UTF-8

  2. html中实现数据的显示和隐藏

    Author: YangQingQing <!DOCTYPE html><html><meta http-equiv="Content-Type" c ...

  3. linux 网卡限速

    #安装git yum -y install git #下载wondershaper git clone  https://github.com/magnific0/wondershaper.git 第 ...

  4. css 文本换行 文本溢出隐藏用省略号表示剩下内容

    正常文本的显示 <style> p{ width: 300px; box-shadow: 0 0 10px #ccc; padding: 0 20px; margin: 20px 100p ...

  5. 项目git的步骤,将项目托管到码云

    项目git的步骤 1.创建.gitignore文件,进行文件过滤.写着不需要上传到git仓库的文件夹名字 2.readme.md 3.拷贝LICENSE,开源协议 4.创建本地仓储 * 使用git i ...

  6. itest(爱测试) 4.3.1 发布,开源BUG 跟踪管理 & 敏捷测试管理软件

    4.3.0 发布后有三个用户强烈要求的更新,所以一周后4.3.1出炉,有点版本帝的味道哈,用户的反馈是我们持续升级的动力...... itest 简介:查看简介 test 开源敏捷测试管理,testO ...

  7. 远程操作Linux主机

    通过putty文件访问: 下载路径:https://the.earth.li/~sgtatham/putty/0.70/w32/putty-0.70-installer.msi 通过Python文件执 ...

  8. 1.2、初识WebRTC

    文章导读:本节内容,如标题所讲,“初识webrtc”.读完之后,我需要你能清楚三个问题:第一.真正的搞明白实时音视频在生产环境中的真实应用以及前景分析:第二.开发一个符合商业标准的实时音视频应用需要解 ...

  9. 数论算法 Plus

    好像有不少更新:) 本文主要记录一些不是那么熟悉的高级数论算法的推导与应用. exBSGS算法 解决模数.底数不互质的离散对数问题. (1)为何\(BSGS\)算法不再适用:\(A\)不一定存在逆元, ...

  10. 【做题笔记】P6014 [CSGRound3]斗牛

    仔细读题:另外两张牌和的个位数即为你所获得的点数.对于Subtask 1,枚举即可.50 分. 考虑:取 \(n-2\) 张牌和取答案的 \(2\) 张牌本质是一样的.因为若取符合条件的 \(n-2\ ...