标准数独技巧教程
标准数独技巧教程
  • 数独概述
    • 初来乍到
    • 坐标
    • 数独历史
  • 直观技巧
    • 排除
    • 唯一余数
    • 剩余数的概念
  • 局部标记技巧
    • 割补(LoL)
    • 直观区块
    • 直观数组
      • 直观隐性数组
      • 直观显性数组
    • 直观复杂出数
  • 基础候选数技巧
    • 候选数的概念
    • 直观和局标技巧在全标下的样子
    • 标准鱼
      • 鱼的基本推理
      • 鳍鱼
      • 退化鱼
      • 孪生鱼
      • 鱼的直观和互补性
      • 鱼的命名
    • XY-Wing 及推广
      • XY-Wing 及推广的基本推理
      • XY-Wing 及推广的残缺逻辑
    • W-Wing
    • 唯一矩形(UR)
      • 唯一矩形的基本推理
      • 唯一矩形的类型
      • 残缺唯一矩形
    • 可规避矩形(AR)
    • 唯一环(UL)
      • 唯一环的基本推理
      • 唯一环的形成条件
      • 唯一环的规格推广
    • 拓展矩形(XR)
      • 拓展矩形的基本推理
      • 拓展矩形的规格推广
    • 全双值格致死解法(BUG)
      • 全双值格致死解法的基本推理
      • 全双值格致死解法的其他类型
    • 欠一数组(ALC)
    • 融合待定数组(SdC)
    • 跨区数组(DDS)
    • 伪数组(ESP)
    • 均衡数组
    • 烟花数组
      • 烟花数组的基本推理
      • 烟花数组的各种用法
  • 链理论
    • 双强链
    • 同数链和异数链
      • 同数链和异数链的定义
      • 头尾异数链的删数规则
      • 不连续环的两种模式
      • 有技巧名的异数链
    • 区块链
    • 待定数组链(ALS 链)
      • 链关系的第二定义
      • 有技巧名的待定数组结构
      • 在链里的待定数组
    • 隐性待定数组链(AHS 链)
    • 毛刺数组链
    • 待定唯一矩形链(AUR 链)
    • 待定可规避矩形链(AAR 链)
    • 环
      • 环的基本推理
      • 数组、鱼和欠一数对的环视角
      • 区块环
    • 强制链
      • 强制链的基本推理
      • 有技巧名的强制链
    • 动态链
      • 动态链的基本推理
      • 动态强制链
      • 动态环的删数分析
      • 动态区块环的删数分析
  • 包装
    • 染色法
      • 同数染色
      • 异数染色
    • 代数法
  • 构造
    • 唯一矩形构造
      • 唯一矩形的结构构造
      • 代入唯一矩形
    • Wing 构造
    • 毛刺和毛边
      • 毛刺的基本推理
      • 毛刺的使用
      • 毛边的基本推理
      • 毛边的使用
      • 毛刺环和毛边环
      • 毛刺、毛边的由来历史和翻译
  • 附录
    • 术语索引
  • 逻辑学基础
    • 逻辑学简要介绍
    • 分情况讨论和析取消去
    • 反证法
  • 组合数学基础
    • 抽屉原理/鸽巢原理
  • 其他
    • 作者介绍
    • 版权声明
由 GitBook 提供支持
在本页
  • 基本推理
  • 在行和列上的伪数组
  • 多种数字可重复的伪数组
  1. 基础候选数技巧

伪数组(ESP)

Extended Subset Principle

上一页跨区数组(DDS)下一页均衡数组

最后更新于2个月前

在前面的内容里,我们知道跨区数组所需要满足的点一共有两点。第一点是格子数和用到的数字种类数量一致,第二点则是每个数只能最多出现一次。

而对于第二点,我们认为数组的定义范围下都是需要满足的特性。下面我们来看这个第二点不满足,却满足第一点的结构都应该怎么推理。

基本推理

如图所示。可以看到,这个结构一共用了 5 个单元格:r5c2359 和 r6c2。数一下里面的数字种类,一共也有 5 个:1、4、5、7、8。

这似乎基本满足了跨区数组的规则。但是很遗憾的是,这个例子里,五种不同的数字里,数字 7 出现了特殊状态:它跨区了。这里的跨区肯定说的是 7 不再满足最多填入一个的规则。很显然,我们完全可以安排数字 7 同时填在 r5c9 和 r6c2 上,这照样不会有问题。因此,因为数字 7 的特殊性,整个结构就不再满足第二点特征,所以它不是一个跨区数组。

但是,先别着急因为不是跨区数组就后悔错过了删数。这个结构仍然有删数。虽然 7 不满足条件,但 1、4、5、8 剩下四种数字确实是最多只能填一个的。由于题目里其他数字都只能最多填一个,所以结构里的数字 7 必须至少填一个。

有人问为什么。其实很简单,因为数字 1、4、5、8 只能最多填一次,所以四个数算上也最多只能占四个单元格。整个结构用了 5 个单元格,还剩下一个必须填的是 7。要不然你就填俩 7 进去,然后让 1、4、5、8 的其中一个数填不了也行,毕竟说的是 1、4、5、8 是最多一次。

总而言之,数字 7 不填结构放不满 5 个单元格,所以会有矛盾。所以 7 必须填至少一个。于是,结论就有了。我们按之前学到的类似 XYZ-Wing、WXYZ-Wing 那样的删数逻辑来看它就行。找所有 7 都“看”得到的地方。

显然,本题里只有 r5c1 满足条件,因此结论就是 r5c1 <> 7。

我们把这个结构称为伪数组(Extended Subset Principle,简称 ESP),象征着它差点就满足跨区数组的规则了,但因为有一个“瑕疵”导致它无法按跨区数组的模式进行删数,但处于一种不是跨区数组却仍旧有删数的特殊状态。伪数组的英文名如果直译的话,是翻译成“数组原理拓展”,即拓展了数组的推理逻辑,衍生出来的技巧。

下面我们再来看一个例子。这个例子是 4 个单元格。

如图所示。这个例子就自己看了,逻辑完全和前面的一样。

在行和列上的伪数组

下面我们来看一下,伪数组在行和列上的情况。

如图所示。数一下数字的种类数:1、2、3、4、6 一共有五种,再数数单元格数量:r1c156, r67c5 也是五个。非常 nice,它和之前的例子完全一样,只是把宫给干掉了,改成了行+列的组合。所以它满足跨区数组的第一点。

第二点呢?似乎只有数字 3 是可以填两次的,其他的最多就能填一次。那么我们也试试用伪数组的思路去理解,看看可不可以。

显然,数字 3 如果不出现的话,1、2、4、6 是不足以填到五个单元格里的,因为他们每一个数都最多只能填一次,所以伪数组的逻辑 OK。删数呢?删数也 OK,这个例子里的删数是 r2c5 <> 3 也是存在的。所以,这也是伪数组,只是把结构调了下位置。

多种数字可重复的伪数组

前面我们介绍的都还算比较简单。下面我们来看分析起来稍微复杂一些的伪数组。

如图所示。仔细数一下单元格数和数字种类数就可以发现,这个例子直接就不相等了。数字种类数有 4、5、7、8 共四种,而单元格一共有 r1c15, r2c179 共五个单元格。

这连第一点都不满足了,这还咋推理啊。别着急嘛。我们来看看里面数字的跨区状态。显然,数字 4 和 5 这两种数字是最多只能有一个的,那么问题只出在数字 7 和 8 上:数字 7 和 8 他们最多能往里面填两个进去。

因为我们要填到 5 个单元格里去,强迫 4 和 5 都出现,那也还剩下三个空格未填。简单使用抽屉原理就知道,不论数字 7 填几次,数字 8 肯定都会至少有一次填入的机会的。因为三个单元格要填两种不同的数字,而数字 7 和 8 最多也就能填俩,而就算最多是两个,那保持三个单元格都能正常填数,势必数字 8 会出现至少一次。当然,数字 7 也是至少出现一次的。

所以,删数呢?因为数字 8 至少有一个,所以删数自然就是看所有的 8 都可以看得到的地方。于是,{r1c8, r2c6} <> 8 的结论就有了。这个题有关于数字 7 的结论吗?很遗憾的是,因为 7 比较特殊,它出现的位置比较多,导致它没有合理的删数,所以这个题只有关于 8 的结论。

那是否存在两种数都能删的情况呢?显然这个答案肯定是“是”。下面我们就来看一个这样的例子。

如图所示。这个例子里一共用了 6 个单元格:r456c9, r589c8,数字种类数则是 1、3、4、7、8 共五种数字。显然,3、4、7 是不能跨区的,所以这三个数字最多只能出现一次。

而为了确保单元格放满全部的数字,所以极限一点,把 3、4、7 都填进去,也还剩下三个单元格要填数。所以,1 和 8 势必都会出现(至少一次)。不管是 1 也好,还是 8 也罢,随便哪个数字出现两次都无关紧要,所以,显然数字 1 和 8 肯定是可以用于删数的。

然后我们再来看删数,神奇的一点发生了。数字 1 似乎有删数,因为结构里用的四个 1 都可以看到的地方是 r4c8 和 r8c9 两处单元格;而数字 8 也有删数,因为结构用到的五个 8 都可以看到 r4c8。所以,这个题的结论就是 r4c8 <> 18, r8c9 <> 1。这便是同时可以删两种数字的伪数组的特殊状态。

至此,我们就把伪数组的内容介绍完了。

伪数组,第一个例子
伪数组,第二个例子
伪数组,第三个例子
分析稍微复杂一点的伪数组,第一个例子
分析稍微复杂一点的伪数组,第二个例子