Вся логика решения судоку строится на четырёх основах. Без них не решить ни одной головоломки; зная их, можно справиться с большинством. Но между «знать» и «видеть» — дистанция, и сокращает её только практика на наглядных примерах.
Каждый приём в этой статье разбирается в трёх слоях: сначала что это такое, затем как применять, потом как он выглядит на реальной сетке. Порядок не случаен — без отсева кандидатов единственный кандидат не виден, без единственного кандидата открытая пара бесполезна, а указывающие пары предполагают и то и другое.
Приёмы, которые вы изучите в этой статье
- Отсев кандидатов: Какая цифра не может стоять в этой клетке?
- Единственный кандидат: Найти клетку, у которой остался лишь один кандидат
- Открытая пара: Использовать две клетки с одинаковыми двумя кандидатами
- Указывающие пары: Преобразовать распределение кандидатов внутри блока в очистку строки или столбца
Отсев кандидатов — фундамент логики судоку. На нём строятся все остальные приёмы, включая единственного кандидата. Ключевой вопрос: «Может ли эта цифра стоять в данной клетке?» Ответ определяется тремя правилами.
Три правила, одна логика
Правило судоку просто: каждая строка, каждый столбец и каждый блок три на три содержат цифры от одного до девяти ровно по одному разу. Отсев работает, переворачивая это правило: если цифра уже есть в строке, столбце или блоке, она не может появиться в других клетках той же строки, столбца или блока.
Пример на сетке — отсев кандидатов
┌───────┬───────┬───────┐
│ 5 3 · │ · 7 · │ · · · │
│ 6 · · │ 1 9 5 │ · · · │
│ · 9 8 │ · · · │ · 6 · │
├───────┼───────┼───────┤
│ 8 · · │ · 6 · │ · · 3 │
│ 4 · · │ 8 · [?]│ · · 1 │
│ 7 · · │ · 2 · │ · · 6 │
├───────┼───────┼───────┤
│ · 6 · │ · · · │ 2 8 · │
│ · · · │ 4 1 9 │ · · 5 │
│ · · · │ · 8 · │ · 7 9 │
└───────┴───────┴───────┘
Рис. 1 — Клетка [?]: строка пять, столбец шесть. Какая цифра здесь стоит?
Пошаговый разбор
Один.Просматриваем строку (строка пять): есть четыре, восемь, один — эти три отсеяны.
Два.Просматриваем столбец (столбец шесть): есть семь, пять, шесть, два, девять, восемь — эти шесть тоже отсеяны.
Три.Просматриваем блок (правый средний три на три): есть шесть, пять, три, один — они тоже отсеяны.
Четыре.Единственная оставшаяся цифра после всех отсевов: четыре.
В эту клетку идёт четыре. Никакого другого варианта нет — не угадывание, а дедукция.
Ключевая тонкость отсева
Отсев нужно мысленно запускать не только для пустых клеток, но и для заполненных. «Влияет ли вот эта семёрка на соседнюю клетку?» — этот вопрос стоит задавать для каждой написанной цифры. Выработанная привычка начинает работать автоматически ещё до того, как вы начинаете искать единственного кандидата.
Если в клетку может встать только одна цифра, значит, именно она там и стоит. Название «единственный» точно передаёт суть: клетка открыто предъявляет своего единственного кандидата — не спрятанного, а доказанного логически.
Чтобы найти единственного кандидата, нужен список кандидатов — перечень цифр, которые ещё могут занять данную клетку после отсева. Когда список сужается до одной позиции, единственный кандидат перед вами.
Как составить список кандидатов
Для каждой пустой клетки задайте вопрос: какие цифры от одного до девяти не могут здесь стоять? Вычеркните из списка все цифры, которые уже есть в той же строке, том же столбце или том же блоке. Оставшиеся цифры — кандидаты этой клетки.
В Судокум.Нет клавиша Н включает режим заметок. В этом режиме набираемые цифры сохраняются в клетке как маленькие пометки-кандидаты. Благодаря этому единственного кандидата можно обнаружить прямо на сетке взглядом, не отслеживая его вручную.
Пример на сетке — единственный кандидат
┌───────┬───────┬───────┐
│ 5 3 4 │ 6 7 8 │ 9 1 2 │
│ 6 7 2 │ 1 9 5 │ 3 4 8 │
│ 1 9 8 │ 3 4 2 │ 5 6 7 │
├───────┼───────┼───────┤
│ 8 5 9 │ 7 6 1 │ 4 2 3 │
│ 4 2 6 │ 8 5 [?]│ 7 9 1 │
│ 7 1 3 │ 9 2 4 │ 8 5 6 │
├───────┼───────┼───────┤
│ 9 6 1 │ 5 3 7 │ 2 8 4 │
│ 2 8 7 │ 4 1 9 │ 6 3 5 │
│ 3 4 5 │ 2 8 6 │ 1 7 9 │
└───────┴───────┴───────┘
Рис. 2 — Строка пять, столбец шесть: остался единственный кандидат.
Пошаговый разбор
Один.Цифры в строке пять: четыре, два, шесть, восемь, пять, семь, девять, один — восемь цифр, недостаёт только три.
Два.Цифры в столбце шесть: восемь, пять, два, один, четыре, семь, девять, шесть — восемь цифр, недостаёт только три.
Три.Цифры в правом среднем блоке: девять, один, три, четыре, семь, восемь, шесть, пять — восемь цифр.
Четыре.После отсева по строке, столбцу и блоку единственная оставшаяся цифра: три. Только она встаёт в эту клетку.
Перебирать всю сетку клетку за клеткой в поисках единственного кандидата не нужно. Эффективный путь: начинайте с наиболее заполненных строк и столбцов. Если в строке стоят семь или восемь цифр, одна или несколько её пустых клеток вполне могут оказаться единственными кандидатами.
Единственный кандидат и скрытый единственный кандидат: в чём разница
Единственный кандидат опирается на клетку: «в эту клетку входит лишь одна цифра». Скрытый единственный кандидат опирается на цифру: «эта цифра в данной строке встаёт только сюда». Оба находят единственного кандидата, но с разных точек зрения. Первый обнаруживается через список кандидатов, второй — через распределение цифр.
Открытая пара требует чуть более глубокого мышления. Суть такова: если две клетки содержат в точности одних и тех же двух кандидатов, и обе клетки находятся в одной строке, одном столбце или одном блоке — этих двух кандидатов можно убрать из остальных клеток той же единицы.
Почему? Потому что эти две цифры неизбежно займут эти две клетки — пусть неизвестно, какая из них куда. Эта неизбежность делает бессмысленным присутствие обеих цифр в списках кандидатов остальных клеток той же строки, столбца или блока.
Пример на сетке — открытая пара
Столбец три — с заметками кандидатов:
┌──────────────────────────┐
│ Строка 1 Столбец 3: [один, семь] │ ← клетка открытой пары
│ Строка 2 Столбец 3: [два, пять, восемь] │
│ Строка 3 Столбец 3: [один, семь] │ ← клетка открытой пары
│ Строка 4 Столбец 3: [два, пять, семь, восемь]│
│ Строка 5 Столбец 3: [два, четыре, семь] │
│ Строка 6 Столбец 3: [два, пять, семь, восемь]│
│ Строка 7 Столбец 3: [три, пять] │
│ Строка 8 Столбец 3: [два, пять, восемь] │
│ Строка 9 Столбец 3: [два, пять, шесть] │
└──────────────────────────┘
Рис. 3 — Столбец три: Строка 1 Столбец 3 и Строка 3 Столбец 3 содержат только [один, семь]. Открытая пара сформирована.
Пошаговый разбор
Один.Кандидаты Строка 1 Столбец 3: [один, семь]. Кандидаты Строка 3 Столбец 3: [один, семь]. Одинаковые два кандидата, одни и те же две клетки — открытая пара найдена.
Два.Цифры один и семь неизбежно займут Строка 1 Столбец 3 и Строка 3 Столбец 3. Неизвестно, которая куда, но обе закреплены за этими двумя клетками.
Три.Убираем один и семь из всех остальных клеток столбца три: Строка 4 Столбец 3 → [два, пять, восемь], Строка 5 Столбец 3 → [два, четыре], Строка 6 Столбец 3 → [два, пять, восемь].
Четыре.В Строка 5 Столбец 3 остались только [два, четыре] — под действием открытой пары клетка превратилась в единственного кандидата. Цепочка решений пошла.
Второй пример — открытая пара внутри блока
Левый верхний блок три на три — с заметками кандидатов:
┌─────────────────────────────────┐
│ Строка 1 Столбец 1:[четыре] Строка 1 Столбец 2:[три,девять] Строка 1 Столбец 3:[три,девять] │ ← Открытая пара
│ Строка 2 Столбец 1:[шесть] Строка 2 Столбец 2:[два,пять,восемь] Строка 2 Столбец 3:[два,восемь] │
│ Строка 3 Столбец 1:[один,семь,восемь] Строка 3 Столбец 2:[два,пять,восемь] Строка 3 Столбец 3:[два,восемь] │
└─────────────────────────────────┘
Рис. 4 — Левый верхний блок: Строка 1 Столбец 2 и Строка 1 Столбец 3 содержат только [три, девять]. Открытая пара.
Один.Строка 1 Столбец 2 = [три, девять], Строка 1 Столбец 3 = [три, девять]. Одинаковые два кандидата — в одном блоке и в одной строке одновременно: двойной эффект.
Два.Три и девять убираются из остальных клеток блока. Кроме того, три и девять убираются из остальных клеток строки один.
Три.Строка 2 Столбец 3 = [два, восемь], Строка 3 Столбец 3 = [два, восемь] — они тоже образуют открытую пару внутри блока. Включается цепочка отсевов.
Почему открытую пару трудно заметить
Поначалу это медленно — нужно сравнивать списки кандидатов клетка за клеткой. У опытных игроков сравнение становится автоматическим: увидев клетку с двумя кандидатами, они рефлекторно проверяют, нет ли пары. Этот рефлекс обычно вырабатывается после пятидесяти–ста головоломок.
Указывающие пары — это наблюдение за распределением кандидатов внутри блока. Если кандидаты некоторой цифры в пределах одного блока три на три сосредоточены только в одной строке или одном столбце, эту цифру можно убрать из клеток той же строки или столбца, лежащих вне этого блока.
Название «указывающие» отсюда и берётся: две (или три) клетки как бы «указывают» наружу вдоль строки или столбца. Это единственный приём, который переносит вывод, сделанный внутри блока, на уровень строки или столбца.
Пример на сетке — указывающие пары вдоль строки
Распределение кандидатов цифры три по блоку и строке:
┌────────────┬────────────┬────────────┐
│ · · · │[три] · [три]│ · · · │ ← Строка один
│ · · · │ · · · │ · · · │
│ · · · │ · · · │ · · · │
└────────────┴────────────┴────────────┘
Левый блок СРЕДНИЙ БЛОК Правый блок
Кандидаты тройки в верхнем среднем блоке: только в строке один (Кл4 и Кл6).
Рис. 5 — Кандидаты тройки в верхнем среднем блоке сосредоточены только в строке один.
Пошаговый разбор
Один.Находим клетки-кандидаты тройки в верхнем среднем блоке три на три: Строка 1 Столбец 4 и Строка 1 Столбец 6.
Два.Обе — в строке один. Внутри блока в строке два или строке три для тройки места нет.
Три.Значит, тройка из этого блока попадёт в строку один. Клетки строки один в левом блоке (Кл1, Кл2, Кл3) и в правом блоке (Кл7, Кл8, Кл9) больше не могут содержать тройку.
Четыре.Три убирается из клеток строки один левого блока и из клеток строки один правого блока.
Второй пример — указывающие пары вдоль столбца
Распределение кандидатов цифры семь по столбцу (левый блок):
┌───────┐
│ · · · │ Ст1 — верх
│ · · · │ Ст2
│ · · · │ Ст3
├───────┤
│ ·[семь]· │ Ст4 — середина ← Кл2
│ ·[семь]· │ Ст5 ← Кл2
│ · · · │ Ст6
├───────┤
│ · · · │ Ст7 — низ
│ · · · │ Ст8
│ · · · │ Ст9
└───────┘
ЛЕВЫЙ БЛОК — кандидаты семёрки только в Кл2 (Ст4 и Ст5).
Рис. 6 — В левом среднем блоке кандидаты семёрки только в столбце два. Семь убирается из верхней и нижней частей столбца два.
Один.Находим клетки-кандидаты семёрки в левом среднем блоке три на три: Строка 4 Столбец 2 и Строка 5 Столбец 2.
Два.Обе — в столбце два. Внутри блока в столбце один или столбце три для семёрки места нет.
Три.Значит, семёрка из этого блока попадёт в столбец два. Клетки столбца два в верхнем блоке (Ст1–Ст3) и в нижнем блоке (Ст7–Ст9) больше не могут содержать семёрку.
Четыре.Семь убирается из клеток столбца два в верхней части и из клеток столбца два в нижней части.
Указывающие пары и сокращение строки-блока: в чём разница
Указывающие пары работают от блока к строке или столбцу. Сокращение строки-блока — обратное: оно фиксирует, что кандидат некоторой строки или столбца остался лишь в одном блоке, и убирает его из остальных клеток этого блока. Два взаимодополняющих направления — одна логика.
В каком порядке применять приёмы
Порядок важен: пропустив один приём, вы рискуете не увидеть следующий. Эффективный алгоритм решения выглядит так:
| # |
Приём |
Когда применять |
| один | Отсев кандидатов | Составьте или обновите список кандидатов для каждой пустой клетки. |
| два | Единственный кандидат | Есть ли клетки, в чьём списке остался лишь один кандидат? Если да — вписывайте. |
| три | Скрытый единственный кандидат | Просмотрите каждую цифру в каждой строке, столбце и блоке. Если она помещается лишь в одну клетку — вписывайте. |
| четыре | Открытая пара | Есть ли пары клеток с одинаковыми двумя кандидатами? Если да — применяйте эффект. |
| пять | Указывающие пары | В каждом блоке по каждой цифре: кандидаты уместились в одну строку или столбец? Если да — чистите снаружи. |
При каждом тупике возвращайтесь к началу этого порядка. Стоит одному приёму дать результат — и нужно начинать сначала: изменение одной клетки меняет списки кандидатов в других.
Инструмент Судокум.Нет для поддержки этого порядка
Обучающий режим тренера в реальном времени показывает, какой приём сейчас применим. Вместо того чтобы держать в голове приведённый выше порядок, тренер анализирует текущее состояние сетки и предлагает подходящий приём. Это бесценно на этапе обучения — но не смотрите на подсказку прежде, чем попробуете увидеть приём самостоятельно.
Часто задаваемые вопросы
Можно ли этими четырьмя приёмами решить любое судоку? ›
Лёгкие головоломки и большинство средних — да. На сложном уровне могут понадобиться Х-крыло, Рыба-меч и другие продвинутые приёмы. Переходить к ним, не отработав эти четыре до автоматизма, бессмысленно — без фундамента верхние этажи не держатся.
Как запомнить разницу между единственным кандидатом и открытой парой? ›
Единственный кандидат — одна клетка, один кандидат: решает клетку напрямую. Открытая пара — две клетки, два одинаковых кандидата в каждой. Открытая пара сужает список кандидатов в соседних клетках и продвигает решение косвенно.
Почему указывающие пары так сложно заметить? ›
Потому что взгляд переключается с блока на строку или столбец — нужно одновременно считывать два измерения. Практический способ: по каждому блоку и по каждой цифре систематически задавайте вопрос: «Не сосредоточены ли кандидаты в одной строке или столбце?» Поначалу медленно, но через несколько десятков головоломок это становится рефлексом.
Обязательно ли записывать кандидатов? ›
На лёгком уровне обычно нет — единственных кандидатов можно находить взглядом. Начиная со среднего увидеть открытую пару и указывающие пары без заметок крайне сложно. В Судокум.Нет клавиша Н включает режим заметок — ручной ввод кандидатов одновременно помогает глубже понять сетку и упрощает применение приёмов.
В заключение
Расстояние между знанием этих четырёх приёмов и умением видеть их на сетке преодолевается практикой. Отсев вы уже делали — просто несистематически. Когда начинаешь замечать единственного кандидата, сетка выглядит иначе; в открытой паре чувствуешь логику цепочки. Указывающие пары показывают, как блок «разговаривает» со строкой и столбцом — и в этот момент взгляд на головоломки меняется.
Сделайте отсев привычкой — без заметок с кандидатами открытая пара не просматривается, без открытой пары указывающие пары не работают. Каждый приём делает предыдущий необходимым; именно поэтому порядок не пропускают.
Судокум.Нет Судохаб
Наглядное руководство по приёмам судоку