# 候选数的概念

我们先来学习一下**候选数**（Candidate）的概念。

## 什么是候选数？ <a href="#what-is-candidate" id="what-is-candidate"></a>

候选数指的是，某一个单元格在尚未填入数字的状态（也就是空格状态）下，它可以填入的数字都有哪些。这一个一个的“填数的可能性”，都是一个候选数。

我们拿这个题来举例。

<figure><img src="/files/8g3tq1cmqidDU8bkngd4" alt="" width="375"><figcaption><p>候选数举例</p></figcaption></figure>

如图所示。别看着里面密密麻麻的数字就产生了惧怕的感觉。

比如说，我们尝试只看 `r5c4`，我们可以通过唯一余数的方式来确定它可以填入哪些数。显然，这个所在宫里有 7 个数已经填出，所以还剩下两种数字没有填了，那它必须就只能是 7 或 9。

但是，似乎 `r5c4` 所在的行和列上也都没有额外的 7 和 9 的信息可提供种类的排除，所以最终这个单元格只能填 7 和 9。我们就把 `r5c4(7)` 和 `r5c4(9)` 称为 `r5c4` 单元格的候选数。注意，一个候选数是一个填数可能，所以 `r5c4` 是有两个候选数的，是这么个理解方式。

这个理解起来并不是很难。难就难在，我们需要严格地将每个单元格的可能性全部标注出来。它是一个不小的工程量，在每一次做到这种难度的题的时候，标注它们都是非常难受的。现在市面上大多数的 app 都会提供“一键全标”的功能，使用这个功能会自动给所有单元格标记上全部的候选数，方便了很多。但与此同时，玩家也会丢失数感。什么是数感？这个我在唯一余数的技巧里有提及，大概就是说，你在数 1 - 9 里缺少啥的这个能力。越快当然就越好。

我建议你多练习数数的操作，以便使用方便的功能的时候能力上的退化。

> 另外，我再补充一句。候选数在盘面里，都会采用这样对齐的方式摆放。其中数字 1、2、3 放在空格的第一层，4、5、6 在第二层，而 7、8、9 在最后一层。这个摆放有个好处是方便我画图。你看着也会比较整洁一些。比如 `r8c8` 只有 7 和 8 这两个候选数，此时只在 7、8 的固定位置上标记候选数，很容易会让你知道其他候选数是不存在的，这样方便你横向对比候选数状态。

## 约定俗成 <a href="#convention-of-candidate" id="convention-of-candidate"></a>

在后续的篇目里，我会采用这个方式讲解技巧的推理过程。当然，这非常的没必要（因为大多数时候并不是全部的候选数都会用上），但是这样讲解是让你习惯这个视角做题，其次是方便我讲解和制图。因为局部的候选数不便于我制图……

另外，从本文开始，后面的全部内容将以删数形式呈现全部技巧的推理过程。这种难度的题也不能更好让你去出数了，所以只能按删数为单位去讲解它们了。

## 关于技巧的分类 <a href="#category-of-techniques" id="category-of-techniques"></a>

为了表述方便，这里给大家列举一下所有数独技巧的分类。

### 做题模式的分类 <a href="#category-of-candidate-visibility" id="category-of-candidate-visibility"></a>

* **直观**（Direct）：指的是玩家不需要依赖任何候选数，只使用出数技巧（产生出数结论的技巧，也就是排除和唯一余数）就可以完成题目的做题模式；
* **局部标记**（Partial-Marking）：也叫局标。指的是玩家在无法直接使用排除和唯一余数的时候，借用一些局标技巧（即割补、区块和数组）进行辅助，排除一些可能性，但又不需要依赖整个盘面都严格标上候选数的做题模式；
* **全部标记**（Full-Marking）：也叫**全标**。指的是玩家在尝试局标技巧后，题目仍然没有显著难度降低的时候，不得不采用全套候选数的视角去做题，也就是后面我们要介绍的一些技巧，依赖它们才能做题的模式。

### 技巧的分类

既然有了做题模式的分类，那么技巧的分类也就有了。

* 直观技巧：只在直观模式下做题才会用的技巧，也就是排除和唯一余数；
* 局部标记技巧：也简称为局标技巧，也就是在局标视角下做题的技巧，即割补、区块和数组这三个；
* 全部标记技巧：也简称为全标技巧，就是不得不全标才能解题的技巧，即数组以上的其他技巧；
* **非直观技巧**（Indirect Technique）：即直观技巧范围的取反，包含所有的局标技巧和全标技巧，也称为**候选数技巧**（Candidate Technique）。

即这个分类：

<figure><img src="/files/SbxUdY4ZRNBFwuNw3y4M" alt=""><figcaption><p>技巧的分类图</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sudoku.kazusa.tech/partial-marking-technique/05-strategying-phase-2/01-concept-of-candidate.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
