# 直观显性数组

说完了隐性数组，下面我们来学习显性数组的部分。

## 显性数对（Naked Pair） <a href="#naked-pair" id="naked-pair"></a>

<figure><img src="https://3269563042-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBwg2o9WwhosLFTuqyR3w%2Fuploads%2FxVhRObfR3ybtIcWxQ8gB%2Fimage.png?alt=media&#x26;token=5c7da835-0faf-441b-ab31-2ea5bd0e49fc" alt="" width="375"><figcaption><p>显性数对 + 宫排除</p></figcaption></figure>

如图所示，这一次我们把思路转过来，不用数字作排除的逻辑，而是使用唯一余数的数数的逻辑。

首先看单元格 `r1c7`，我们可以直接确定的是，它只能填入 3 或 8 的其中一个数。而同列还有一个单元格 `r9c7` 也只能填入 3 或 8。

由于 `r19c7` 同列，所以它们不能填入相同的数字。所以就会出现此 3 彼 8 的排列。但是，不论是哪个数填在哪一个单元格，`c7` 的别处都没有机会填 3 或者 8。显然，`r4c7` 也不例外。所以，`r4c7 <> 8`。

得到这一点后，我们再来通过宫排除，可以得到 `b6` 的数字 8 只能填入到 `r4c9`，所以 `r4c9 = 8`。

我们把这个技巧称为**显性数对**（Naked Pair），指的是 `r19c7(38)`。

## 显性三数组（Naked Triple） <a href="#naked-triple" id="naked-triple"></a>

下面我们来看下规格为 3 的逻辑。

<figure><img src="https://3269563042-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBwg2o9WwhosLFTuqyR3w%2Fuploads%2F2jCMPjRdm6vwcqcekkzj%2Fimage.png?alt=media&#x26;token=76cece7f-c348-4a0d-b2dc-b5947448574f" alt="" width="375"><figcaption><p>显性三数组 + 唯一余数</p></figcaption></figure>

我们先看 `r1c5`。这个单元格里可以填入的数字只有 1、2、6，别的数字在所在的行、列、宫里都有出现过了。其次再来看 `r3c4`。恰好，`r3c4` 也只能是 1、2、6。`r3c5` 也是如此。

由于 `{r1c5, r3c45}` 同一个宫里，所以不能填入重复的数字。而它们三个单元格都只能填 1、2、6，所以内部只能出现 1、2、6 三种数字的排列。我们拿出一个数字填入到一个格子里，然后在剩余的两个数字里选一个填入到第二个格子里，那么最后剩下一个数直接填入进去，三个单元格就会被 1、2、6 全部占满。

当得到这一点后，我们就可以知道的是，`r3c6` 也与这三个单元格同一个宫，不能填入相同的数。而这个宫里，数字 1、2、6 的填入机会已经给了 `{r1c5, r3c45}` 了，所以别的单元格都没有任何的机会填入它们。于是，`r3c6 <> 126`。

接着，我们可以通过这一点得到，`r3c6` 只能填入 8。

我们把这个技巧称为**显性三数组**（Naked Triple）。

## 显性四数组（Naked Quadruple） <a href="#naked-quadruple" id="naked-quadruple"></a>

和前面隐性四数组描述的内容一致，**显性四数组**（Naked Quadruple）的规格已经比较大了，所以在平时做题的时候很难能够遇到这样的结构，所以带着大家看一下就行了。

<figure><img src="https://3269563042-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FBwg2o9WwhosLFTuqyR3w%2Fuploads%2Fp9cgdJHRYDiHzESVYNMm%2Fimage.png?alt=media&#x26;token=9967206f-1d27-47fb-8f83-d17383c02a00" alt="" width="375"><figcaption><p>显性四数组 + 宫排除</p></figcaption></figure>

如图所示。观察 `b7`，我们通过唯一余数的操作可以依次得到 `r7c3` 只能是 4、6、7、9，`r8c2` 只能是 4、9，`r8c3` 只能是 4、7、9，`r9c3` 只能是 4、6、7。

虽然这四个单元格的可能填数是“参差不齐”的，但是可以得到的是，在 `b7` 里，数字 4、6、7、9 的排列只能在 `{r8c2, r789c3}` 这四个单元格里。

当我们得到这一点后，我们就可以知道，6 这个数在 `c3` 的别处都没有机会填入（当然，`b7` 的别处也一样）。所以，我们就有了 `r6c3 <> 6` 的结论。

然后，我们再根据宫排除得到 `b4` 的宫排除结论：`r6c2 = 6`。

这里的 `{r8c2, r789c3}(4679)` 就是我们要说的显性四数组了。

至此我们就把显性数组的逻辑讲完了。
