Как разгадывать судоку? Правила и способы решения. Методы решения судоку

АЛГОРИТМ РЕШЕНИЯ СУДОКУ (SUDOKU) Оглавление Введение 1.Приёмы решения судоку.* 1.1.Метод малых квадратов.* 1.2.Метод строк и столбцов.* 1.3.Совместный анализ строки (столбца) с малым квадратом.* 1.4.Совместный анализ квадрата строки и столбца.* 1.5.Локальные таблицы. Пары. Триады..* 1.6.Логический подход.* 1.7.Опора на нераскрытые пары.* 1.8.Пример решения сложного судоку 1.9.Волевое раскрытие пар и судоку с неоднозначными решениями 1.10.Непары 1.11.совместное использование двух приёмов 1.12.Полупары.* 1.13.Решение судоку с малым исходным числом цифр. Нетриады. 1.14.Квадро 1.15.Рекомендации 2.Табличный алгоритм решения судоку 3.Практические указания 4.Пример решения судоку табличным способом 5.Проверьте свои силы Примечание: пункты не помеченные звёздочкой (*) можно опустить при первом чтении. Введение Судоку - это цифровая головоломка. Игровое поле - большой квадрат состоящий из девяти строк (9 клеток в строке, счёт клеток в строке идёт слева направо) и девяти столбцов (9 клеток в столбце, счёт клеток в столбце - сверху вниз) всего: (9х9=81 клеток), разбито на 9 малых квадратов (каждый квадрат состоит из 3х3=9 клеток, счёт квадратов - слева направо, сверху вниз, счёт клеток в малом квадрате - слева направо, сверху вниз). Каждая клетка рабочего поля принадлежит одновременно одной строке и одному столбцу и имеет координаты состоящие из двух цифр: её номера столбца (ось X)и номера строки (ось Y). Клетка в верхнем левом углу игрового поля имеет координаты (1,1), следующая клетка в первой строке - (2,1) цифра 7 в этой клетке будет записана в тексте так: 7(2,1), цифра 8 в третьей клетке во второй строке - 8(3,2), и т.д., а клетка в правом нижнем углу игрового поля имеет координаты (9,9). Решить судоку - заполнить все пустые клетки игрового поля цифрами от 1 до 9 таким образом, чтобы ни в одной строке, ни в одном столбце, ни в одном малом квадрате цифры не повторялись. Цифры в заполненных клетках - это цифры результата (ЦР). Цифры, которые мы должны найти - это цифры недостающие - ЦН. Если в каком-то малом квадрате записаны три цифры, например, 158 - это ЦР(запятые опущены, читаем: один, два, три), то - НЦ в данном квадрате - это - 234679. Другими словами - решить судоку - найти и правильно расставить все недостающие цифры, каждая ЦН, место которой однозначно определено, становится ЦР. На рисунках ЦР нарисованы с индексами, индекс 1 определяет ЦР найденную первой 2 - второй и т.д. В тексте указаны либо координаты ЦР: ЦР5(6,3) или 5(6,3); либо координаты и индекс: 5(6,3) инд.12: либо только индекс: 5-12. Индексация ЦР на рисунках облегчает понимание процесса решения судоку. В "диагональных" судоку накладывается ещё одно условие, а именно: в обеих диагоналях большого квадрата цифры тоже не должны повторяться. Обычно судоку имеет одно решение, но бывают и исключения - 2, 3 и более решений. Решение судоку требует внимания и хорошего освещения. Используйте шариковые ручки. 1. ПРИёМЫ РЕШЕНИЯ СУДОКУ* 1.1.Метод малых квадратов - МК.* Это самый простой приём решения судоку, он основан на том факте, что в каждом малом квадрате каждая цифра из девяти возможных может появиться только один раз. С него можно начинать решение головоломки.Поиск ЦР можно начинать с любой цифры, обычно начинаем с единицы (если они присутствуют в задаче). Находим малый квадрат в котором эта цифра отсутствует. Поиск клетки в которой должна находиться выбранная нами цифра в данном квадрате ведём следующим образом. Просматриваем все строки и столбцы проходящие через наш малый квадрат на предмет наличия в них выбранной нами цифры. Если где-то (в соседних малых квадратах), строка или столбец проходящие через наш квадрат содержит нашу цифру, то части их (строк или столбцов) в нашем квадрате будут запретными ("битыми") для установки выбранной нами цифры. Если, проанализировав все строки и столбцы (3 и 3) проходящие через наш квадрат, мы видим, что все клетки нашего квадрата, кроме ОДНОЙ "биты", или заняты другими цифрами, то в эту ОДНУ клеточку мы и должны вписать нашу цифру! 1.1.1.Пример. Рис.11 В Кв.5 - пять пустых клеток. Все они, кроме клетки с координатами (5,5) "биты" тройками (битые клетки обозначены красными крестиками), вот в эту-то "небитую" клетку мы и впишем цифру результата - ЦР3(5,5). 1.1.2.Пример с пустым квадратом. Анализ: Рис.11A. Квадрат 4 - пуст, но все его клетки, кроме одной, "биты" цифрами 7 (битые клетки обозначены красными крестиками). В эту одну "небитую" клетку с коодинатами (3,5) мы и впишем цифру результата - ЦР7(3,5). 1.1.3.Анализируем таким же способом следуюющие малые квадраты. Проработав с одной цифрой (удачно или неудачно) все квадраты не содержащие её, переходим к другой цифре. Если какая-то цифра найдена во всех малых квадратах, делаем об этом пометку. Кончив работу с девяткой - переходим снова к единице и прорабатываем все цифры ещё раз. Если очередной проход не даёт результатов, то переходим к другим способам изложенным ниже. Метод МК - самый простой, с его помощью можно решать целиком только самые простые судоку Рис.11Б. Чёрный цвет - исх. сост., зелёный цвет - первый круг, красный цвет - второй, третий круг - пустые клетки для Цр2. Для лучшего вхождения в суть дела, рекомендую нарисовать исходное состояние (чёрные цифры) и пройти весь путь решения. 1.1.4.Для решения сложных судоку хорошо использовать этот метод совместно с приёмом 1.12.(полупары), отмечая маленькими цифрами абсолютно ВСЕ полупары, которые встречаются, будь то прямые, диагональные, угловые. 1.2.Метод строк и столбцов - СиС.* Ст - столбец; Стр - строка. Когда видим, что в том или ином столбце, малом квадрате или строке осталась одна пустая клетка, то без труда заполняем её. Если же дело до этого не доходит, а единственное, чего нам удалось добиться так это две свободные клетки, то в каждую из них заносим две недостающие цифры - это будет "пара". Если три пустые клетки находятся в одной строке или столбце, то в каждую из них заносим три недостающие цифры. Если все три пустые клетки были в одном малом квадрате, то считается, что они теперь заполнены и в дальнейшем поиске в этом малом квадрате не участвуют. Если пустых клеток в какой-либо строке или столбце больше, то используем следующие приёмы. 1.2.1.СиСа. Для каждой недостающей цифры проверяем все свободные клетки. Если есть только ОДНА "небитая" клетка для данной недостающей цифры, то устанавливаем в неё данную цифру, это будет цифра результата. Рис.12а: Пример решения простого судоку методом СиСа.
Красным цветом показаны ЦР найденные в результате анализа столбцов, а зелёным - в результате анализа строк. Решение. Ст.5 в нём три пустые клетки, две из них биты двойками, а одна не бита, записываем в неё 2-1. Далее находим 6-2 и 8-3. Стр.3 в ней пять пустых клеток, четыре клетки биты пятёрками, а одна - нет, в неё и записываем 5-4. Ст.1 в нём две пустые клетки, одна бита единицей, а другая - нет, в неё и записываем 1-5, а в другую - 3-6. Это судоку можно решить до конца используя только один приём СиСа. 1.2.2.СиСб. Если же использование критерия СиСа не позволяет найти больше ни одной цифры результата (проверены все строки и столбцы и всюду для каждой недостающей цифры есть несколько "небитых" клеток), то можно поискать среди этих "небитых" клеток такую, которая "бита" всеми остальными недостающими цифрами, кроме одной, и в неё поставить эту недостающую цифру. Делаем это следующим образом. Выписываем недостающие цифры какой-либо строки и проверяем все столбцы пересекающие эту строку по пустым клеткам на соответствие критерию 1.2.2. Пример. Рис.12. Строка 1: 056497000 (нулями обозначены пустые клетки). Недостающие цифры строки 1: 1238. В строке 1 пустые клетки - это места пересечения со столбцами 1,7,8,9 соответственно. Столбец 1: 000820400. Столбец 7: 090481052. Столбец 8: 000069041. Столбец 9: 004073000.
Анализ: Столбец 1 "бьёт" только две недостающие цифры строки: 28. Столбец 7 - "бьёт" три цифры: 128, это то что нам нужно, небитой осталась недостающая цифра 3, её и запишем в седьмую пустую клетку строки 1, это и будет цифра результата ЦР3(7,1). Теперь НЦ Стр.1 -128. Ст.1 "бьёт" две недостающие цифры (как было сказано ранее) -28, небитой остаётся цифра 1, её и запишем в первую пуатую клетку Стр.1, получим ЦР1(1,1) (на Рис.12 она не показана). При некотором навыке, проверки СиСа и СиСб выполняем одновременно. Если вы таким образом проанализировали все строки и не получили результата, то необходимо провести подобный анализ со всеми столбцами (теперь уже выписывая недостающие цифры столбцов). 1.2.3.Рис. 12Б: Пример решения более сложного судоку с использованием приёмов МК - зелёный цвет, СиСа - красный и СиСб - синий. Рассмотрим применение приёма СиСб. Поиск 1-8: Стр7, в ней три пустые клетки, клетка(8,7) бита двойкой и девяткой, а единицей - нет, единица и будет ЦР в этой клетке: 1-8. Поиск 7-11: Стр.8, в ней четыре пустые клетки, клетка (8,8) бита единицей, двойкой и девяткой, а семёркой - нет, она-то и будет ЦР в этой клетке: 7-11. Этим же приёмом находим 1-12. 1.3.Совместный анализ строки (столбца) с малым квадратом.* Пример. Рис.13. Квадрат 1: 013062045. Недостающие цифры квадрата 1: 789 Строка 2: 062089500. Анализ: Строка 2 "бьёт" в квадрате пустую клетку с координатами (1,2) своими цифрами 89, недостающая нифра 7 в этой клетке "небита" она и будет результатом в этой клетке ЦР7(1,2). 1.3.1.Пустые клетки тоже способны "бить". Если в малом квадрате пуста только одна малая строка (три цифры), или один малый столбец, то легко вычислить цифры, которые подспудно присутствуют в этой малой строке, или малом столбце и использовать их свойство "бить" в своих целях. 1.4.Совместный анализ квадрата, строки и столбца.* Пример. Рис.14. Квадрат 1: 004109060. Недостающие цифры квадрата 1: 23578. Строка 2: 109346002. Столбец 2: 006548900. Анализ: Строка 2 и столбец 2 пересекаются в пустой клетке квадрата 1 с коодинатами (2,2). Строка "бьёт" эту клетку цифрами 23, а столбец - цифрами 58. Небитой в этой клетке остаётся недостающая цифра 7, она и будет результатом: ЦР7(2,2). 1.5.Локальные таблицы. Пары. Триады.* Приём состоит в построении таблицы подобной описанной в главе 2., с той разницой, что таблица строится не для всего рабочего поля, а для одной какой-то структуры - строки, столбца или малого квадрата и в применении приёмов изложенных в вышеуказанной главе. 1.5.1.Локальная таблица для столбца. Пары. Этот приём покажем на примере решения судоку средней сложности (для лучшего понимания необходимо предварительно ознакомиться с главой 2. Такая вот ситуация возникла при его решении, чёрные и зелёные цифры. Исходное состояние - чёрные цифры. Рис.15.
Столбец 5: 070000005 Недостающие цифры столбца 5: 1234689 Квадрат 8: 406901758 Недостающие цифры квадрата 8: 23 Две пустые клетки в квадрате 8 принадлежат столбцу 5 и в них будет находиться пара: 23 (о парах см. 1.7, 1.9 и 2.П7.а)), эта пара и заставила нас обратить внимание на столбец 5. Теперь составим таблицу для столбца 5, для чего во все пустые клетки столбца запишем все его недостающие цифры, таблица 1 примет вид: Вычеркнем в каждой клетке цифры идентичные цифрам в строке коей она принадлежит и в квадрате, получим таблицу 2: Вычёркиваем в другх клетках цифры идентичные цифрам пары (23), получим таблицу 3: В её четвёртой строке находится цифра результата ЦР9(5,4). С учётом этого, столбец 5 теперь будет выглядеть: Столбец 5: 070900005 Строка 4: 710090468 Дальнейшее решение этого судоку не представит трудностей. Следующая цифра результата - это 9(6,3). 1.5.2.Локальная таблица для малого квадрата. Триады. Пример на Рис.1.5.1.
Исх. сост. - 28 цифр чёрного цвета. Используя приём МК находим ЦР 2-1 - 7-14. Локальная таблица для Кв.5. НЦ - 1345789; Заполняем таблицу, вычёркиваем (зелёным цветом) и получаем триаду (триада - когда в трёх клетках какой-либо одной структуры находятся по три одинаковых ЦН) 139 в клетках (4,5), (6,5) и в клетке (6,6) после очищения от пятёрки (очищение, если есть варианты, надо делать очень осторожно!). Вычёркиваем (красным цветом) цифры, составляющие триаду, из других клеток, получаем ЦР5(6,4)-15; вычёркиваем пятёрку в клетке (4,6) - получаем ЦР7(4,6)-16; вычёркиваем семёрки - получаем пару 48. Продолжаем решение. Маленький пример на очищение. Предположим, что лок. табл. для Кв.2 имеет вид: 4, 6, 3, 189, 2, 189, 1789, 5, 1789; Можно получить триаду очистив от семёрки одну из двух клеток содержащих НЦ 1789. Сделаем это, в другой клетке получим ЦР7 и продолжим работу. Если в результате нашего выбора, мы придём к противоречию, то вернёмся к точке выбора, возмём другую клетку для очищения и продолжим решение. На практике, если число недостающих цифр в малом квадрате невелико, то таблицу не рисуем, производим нужные действия в уме, или просто выписываем НЦ в строчку для облегчения работы. При выполнении этого приёма в одну клетку судоку можно вписывать до трёх цифр. Хотя у меня на рисунках - не более двух цифр, но я это делал для лучшей разборчивости рисунка! 1.6.Логический подход* 1.6.1.Простенький пример. При решении сложилась ситуация. Рис.161, без красной шестёрки.
Анализ.Кв.6: ЦР6 должна быть либо в верхней правой клетке, либо в правой нижней. Кв.4: в нём три пустых клетки, нижняя правая из них бита шестёркой, а в какой-то из верхних шестёрка может быть. Эта шестёрка будет бить верхние клетки в Кв.6. Это значит, что шестёрка будет в нижней правой клетке Кв6.: ЦР6(9,6). 1.6.2.Красивый пример. Ситуация.
В Кв2 ЦР1 будет находиться в клетках (4,2) или (5,2). В Кв7 ЦР1 будет находиться в одной из клеток: (1,7); (1,8); (1,9). В результате все клетки в Кв1 будут биты за исключением клетки (3,3), в ней-то и будет ЦР1(3,3). Далее продолжаем решение до конца используя приёмы изложенные в 1,1 и 1,2. След. ЦР: ЦР9(3,5); ЦР4(3,2); ЦР4(1,5); Цр4(2,8) и т.д. 1.7.Опора на нераскрытые пары.* Нераскрытая пара (или просто - пара) - это две клетки в строке, столбце или малом квадрате, в которых находятся по две одинаковых недостающих цифры, уникальные для каждой из вышеописаных структур. Пара может появиться естественным образом (в структуре осталиссь две пустые клетки), или в результате целенаправленного её поиска (это может получиться даже в пустой структуре).После раскрытия пара содержит по одной цифре результата в каждой клетке. Нераскрытая пара может: 1.7.1.Уже одним своим присутствием, занимая две клетки упрощает ситуацию уменьшая на две количество недостающих цифр в структуре. При анализе строк и столбцов нераскрытые пары воспринимаются как раскрытые, если они находятся целиком в теле анализируемой Стр. (Ст.) (на Рис.1.7.1 - пары Е и Д, которые целиком находятся в теле анализируемой Стр.4), либо целиком находятся в одном из малых квадратов, через которые проходит анал. Стр. (Ст.) не являясь частью её (его) (на рис. - пары Б, В). ЛИбо пара частично или полностью находится за пределами таких квадратов, но расположена перпендикулярно к анал. Стр. (Ст.)(на Рис. - пара А) и даже может пересекать её (его) опять же не являясь при этом частью её (его) (на Рис. - пары Г, Ж). ЕСЛИ ЖЕ ОДна клетка нераскрытой пары принадлежит анал, Стр. (Ст.), то при анализе считается, что в этой клетке могут быть только цифры этой пары, а для остальных НЦ. Стр. (ст.) эта клетка занята (на Рис. - пары К, М). Диагональная нераскрытая пара воспринимается как раскрытая, если она целиком находится в одном из квадратов, через котовые проходит анал Стр. (ст.) (на Рис. - пара Б). Если же такая пара находится за пределами этих квадратов, то она вообще не учитывается при анализе (пара Н на Рис.). Аналогичный подход используется при анализе малых квадратов. 1.7.2.Участвовать в порождении новой пары. 1.7.3.Раскрывать другую пару, если пары расположены перпендикулярно друг другу, или раскрываемая пара - диагональная (клетки пары не находятся на одной горизонтали или вертикали). Приём хорош для использования в пустых квадратах, и при решении минимальных судоку. Пример, рис.А1.
Исходные цифры - чёрные, без индексов. Кв.5 - пустой. Находим первые ЦР с индексами 1-6. Анализируя Кв.8 и Стр.9, видим, что в верхних двух клетках будет пара 79, а в нижней строке квадрата - цифры 158. Правая нижняя клетка бита цифрами 15 из Ст.6 и в ней будет иметь место ЦР8(6,9)-7, а в двух соседних клетках - пара 15. В Стр.9 остаются неопределёнными цифры 234. Взглянув на Ст.7, видим, что цр2(7,9)-8 имеет мест быть. Тепеь пустой Кв.5. Семёрки бьют в нём два левых столбца и среднюю строку, то же самое делают шестёрки. Результат - пара 76. Восьмёрки бьют верхнюю и нижнюю строки и правый столбец - пара 48. Находим ЦР3(5,6), индекс 9 и ЦР1(4,6), индекс 10. Эта единица раскрывает пару 15 - ЦР5(4,9) и ЦР1(5,9) индексы 11 и 12. (рис А2).
Далее находим ЦР с индексами 13- 17. Стр.4 содержит клетку с цифрами 76 и пустую клетку, битую семёркой, в неё ставим ЦР6(1,4) индекс 18 и раскрываем пару 76 ЦР7(6,4) индекс 19 и ЦР6(6,6) индекс 20. Далее находим ЦР с индексами 21 - 34. ЦР9(2,7) индекс 34 раскрывает пару 79 - ЦР7(5,7) и ЦР9(5,8) индексы 35 и 36. Далее находим ЦР с индексами 37 - 52. Четвёрка с инд.52 и восьмёрка с инд.53 раскрывает пару 48 - ЦР4(4.5) инд.54 и ЦР8(5,5) инд.55. Вышеизложенные приёмы можно использовать в любом порядке. 1.8.Пример решения сложного судоку. Рис.1.8. Для лучшего восприятия текста и извлечения пользы из его прочтения, читатель должен нарисовать игровое поле в исходном состоянии и, руководствуясь текстом, осознанно заполнять пустые клетки. Исходное состояние - 25 цифр чёрного цвета. Используя приёмы Мк и СиСа находим ЦР: (красные) 3(4,5)-1; 9(6,5); 8(5,4) и 5(5,6); далее: 8(1,5); 8(6,2); 4(6,9); 8(9,8); 8(8,3); 8(2,9)-10; пары: 57, 15, 47; 7(3,5)-12; 2-13; 3-14; 4-15; 4-16 раскрывает пару 47; пара 36(Кв.4); Для нахождения 5(8,7)-17 используем логический подход. В Кв.2 пятёрка будет в верхней строке, в Кв3. пятёрка будет в одной из двух пустых клеток нижней строки, в Кв.6 пятёрка появится после раскрытия пары 15 в одной из двух клеток пары, исходя из вышеизложенного пятёрка в Кв.9 будет в средней клетке верхней строки: 5(8,7)-17(зелённые). Пара 19(Ст.8); Стр.9 две пустые клетки её вКв.8 биты тройкой и шестёркой, получаем цепочку пар 36 Строим локальную таблицу для ст.4: вычёркиваем, в нижней клетке получим - 19(4,9). Получилась цепочка пар 19. 7(5,9)-18 раскрывает пару 57; 4-19; 3-20; пара 26; 6-21 раскрывает цепочку пар 36 и пару 26; пара 12(Стр.2); 3-22; 4-23; 5-24; 6-25; 6-26; пара 79(Ст.2) и пара79(Кв.7; пара12(Ст.1) и пара 12(Ст.5); 5-27; 9-28 раскрывает пару 79(Кв.1), цепочку пар 19, цепочку пар 12; 9-29 раскрывает пару 79(Кв.7); 7-30; 1-31 раскрывает пару 15. Конец. 1.9.Волевое раскрытие пар и судоку с неоднозначным решением. 1.9.1. Этот пункт и пункт 1.9.2. можно не читать при первичном ознакомлении. Эти пункты можно использовать для решения судоку не совсем правильно составленных, что является теперь редким явлением Волевое раскрытие пар применяется, когда использование других приёмов не даёт результатов. Решение, которое вы примете может оказатся неверным, вы определите это, когда заметите, что у вас в какой-либо структуре есть две одинаковые цифры, или вы пытаетесь это сделать. В таком случае надо изменить свой выбор при раскрытие пары на противоположный и продолжить решение с точки раскрытия пары.
Пример Рис.190. Решение. Исх. сост. 28 цифр чёрного цвета, используем приёмы - МК, СиСа и один раз - СиСб - 5-7; после 1-22 - пара37; после 1-24 - пара 89; 3-25; 6-26; пара 17; две пары 27 - красная и зелёная. тупик. Раскрываем волюнтаристки пару 37, что вызывает открытие пары 17; далее - 1-27; 3-28; тупик. Раскрываем цепочку пар 27; 7-29 - 4-39; 8-40 раскрывает пару 89. Всё. Нам повезло, в ходе решения все пары были раскрыты правильно, в противном случае, пришлось бы возвращаться назад, альтернативно раскрывать пары. Для упрощения процесса, волевое раскрытие пар и дальнейшее решение надо делать карандашом, чтобы в случае неудачи написать новые цифры чернилами. 1.9.2.Судоку с неоднозначным решением имеют не одно, а несколько правильных решений.
Пример. Рис.191. Решение. Исх. сост. 33 цифры чёрного цвета. Находим зелёные ЦР до 7(9,5)-21; четыре пары зелёного цвета- 37,48,45,25. Тупик. Раскрываен наобум цепочку пар 45; находим новые пары красного цвета59,24; раскрываем пару 25; нов. пара 28. Раскрываем пары37,48 и находим 7-1 красного цвета, нов. пара 35, раскрываем её и находим 3-2 тоже красного цвета: новые пары 45,49 - раскрываем их с учётом того, что их части находятся в одном Кв.2, где есть пятёрки; следом раскрываются пары24,28; 9-3; 5-4;8-5. На рис.192 приведё второй вариант решения, ещё два варианта приведены на Рис.193,194 (см. иллюстрацию). 1.10.Непары. Непара - это клетка с двумя разными цифрами, сочетание которых является уникальным для данной структуры. если же в структуре находятся две клетки с данным сочетанием цифр, то это - пара. Непары появляются как результат использования локальных таблиц или в результате их целенаправленного поиска. Раскрываются в результате сложившихся условий, либо волевым решением. Пример. Рис.1.101. Решение. Исх. сост. - 26 цифр чёрного цвета. Находим ЦР (зелёные): 4-1 - 2-7; пары 58,23,89,17; 6-8; 2-9; Кв.3 бит парами 58 и 89 - находим 8-10; 5-11 - 7-15; раскрывается пара 17; пара 46 раскрывается шестёркой из Ст.1; 6-16; 8-17; пара 34; 5-18 - 4-20; Лок. табл. дляСт.1: непара 13; ЦР2-21; непара 35. Лок. табл. для Ст.2: непары 19,89,48,14. Лок. табл. для Ст.3: непары 39,79,37. В Ст.6 находим непару 23 (красную), она образует цепочку пар с зелёной парой; в этом жв Ст. находим пару 78, она раскрывает пару 58. Тупик. Раскрываем волевым решением цепочку непар начиная с 13(1,3), включая пары: 28,78,23,34. Находим 3-27. Точка. 1.11.Совместное использование двух приёмов. Приёмы СиС можно использовать совместно с приёмом "логический подход" покажем это на примере решения судоку в котором совместно используются приём "логический подход" и приём СиСб. Рис.11101. Исх. сост. - 28 цифр чёрного цвета. Легко находим: 1-1 - 8-5. Стр.2. НЦ - 23569, клетка (2,2) бита цифрами 259, если бы она была бита ещё и шестёркой, то дело было бы в шляпе. но ведь такая шестёрка виртуально существует в Кв.4, который бит двумя шестёрками из Кв5. и Кв6. Таким образом находим ЦР3(2,2)-6. Находим пару 35 в Кв4. и Стр.5; 2-7; 8-8; пару 47. Для нахождения непар анализируем лок. табл: Стр.4: НЦ - 789 - непара 78; Стр.2: НЦ - 2569 - непары 56,29; Стр.5: НЦ - 679 - непара 67; Кв.5: НЦ - 369 - непара 59; Кв.7: нц - 3479 - непары 37,39; Тупик; Раскрываем волевым решением пару 47; находим 4-9,4-10,8-11 и пару 56; находим пары 67 и 25; пару 69, которая раскрывает непару 59 и цепочку пар 35. Пара 67 раскрывает непару 78. Далее находим 9-12; 9-13; 2-14; 2-15 раскрывает пару 25; находим 4-16 - 8-19; 6-20 раскрывает пару 67; 9-21; 7-22; 7-23 раскрывает непару 37, 39; 7-24; 3-25; 5-26 раскрывает пары 56, 69 и непару 29; находим 5-27; 3-28 - 2-34. Точка. 1.12.Полупары* 1.12.1.Если при использовани приёмов МК или СиСа нам не удаётся найти ту единственную клетку для определённой ЦР в данной структуре, и всё чего мы достигли - это две клетки в которых предположительно будет находиться искомая ЦР (например 2 Рис, 1.12.1), то вписываем в один уголок этих клеток маленькую искомую цифру 2 - это и будет полупара. 1.12.2.Прямая полупара, при анализе может восприниматся иногда как ЦР (в направлении вдоль). 1.12.3.При дальнейшем поиске мы можем определить, что другая цифра (например 5)претендует на те же самые две клетки в данной структуре - это уже будет пара 25, записываем её нормальным шрифтом. 1.12.4.Если же для одной из клеток полупары мы нашли другую ЦР, то во второй клетке актуализуем как ЦР её собственную цифру. 1.12.5.Пример. Рис.1.12.1. Исх. сост. - 25 цифр Чёрного цвета. Начинаем поиск ЦР используя приём МК. Находим полупары 1 в Кв.6 и Кв.8. полупару 2 - в Кв.4, полупары 4 - в Кв.2 и Кв.4, полупару из кв.4 используем в приёме "логический подход" и находим ЦР4-1; Здесь полупара 4 из Кв.4 представляется для Кв.7 как ЦР4 (о чём было сказано выше). полупару 6 - в Кв.2 и используем её для нахождения ЦР6-2; полупару 8 - в кв.1; полупару 9 - в Кв.4 и используем её для нахождения ЦР9-3. 1.12.6.Если есть две одинаковые полупары (в разных структурах), и одна из них(прямая) перпендикулярна другой, и бьёт одну из клеток другой, то в небитой клетке другой полупары устанавливаем ЦР. 1.12.7.Если две одинаковые прямые полупары (на Рис. не показаны) расположены одинаковым образом в двух разных квадратах относительно строк или столбцов и параллельно друг другу (предположим: Кв.1. - полупара 5 в клетках (1,1) и (1,3), а в Кв.3. - полупара 5 в клетках (7.1) и (7.3), эти полупары расположены одинаковым образом относительно строк), то искомая, однозначная с полупарами ЦР во втором квадрате будет стоять в строке (или столбце) не использованной(..ом)в полупарах. В нашем примере ЦР5 в Кв.2. будет находиться в Стр.2. Вышесказанное справедливо и для случая, когда в одном квадрате находится полупара, а в другом - пара. См. рисунок: Пара 56 в Кв.7 а полупара 5 в Кв.8 (в Стр.8 и Стр.9), а результат ЦР5-1 в Кв9 в Стр.7. Учитывая вышесказанное, для успешного продвижения решения на начальном этапе необходимо отмечать АБСОЛЮТНО ВСЕ полупары! 1.12.8.Интересные примеры связанные с полупарами. На рисунке 1.10.2. малый квадрат 5 - абсолютно пустой, в нём только две полупары: 8 и 9 (красный цвет). В малых квадратах 2,6 и 8 кроме всего прочего имеются полупары 1. В малом квадрате 4 имеется пара 15. Взаимодействие этой пары и указанных выше полупар даёт ЦР1 в малом квадрате 5, что в свою очередь даёт ещё и ЦР8 в том же квадрате!
На рисунке 1.10.3. в малом квадрате 8 находятся ЦР: 2,3,6,7,8. Там же находятся четыре полупары: 1,4,5 и 9. Когда в квадрате 5 появляется ЦР 4 она пораждает Цр4 в квадрате 8, что в свою очередь попождает ЦР9, что в свою очередь порождает ЦР5, что в свою очередь порождает ЦР1 (на рисунке не показано).
1.13.Решение судоку с малым исходным числом цифр. Нетриады. Минимальное исходное число цифр в судоку равно 17. Такие судоку часто требуют волевого раскрытия пaры (или пар). При их решении удобно использовать нетриады. Нетриада это клетка в какой-либо структуре в которой находятся три недостающие цифры НЦ. Три нетриады в одной структуре содержащие одинаковые НЦ образуют триаду. 1.14.Квадро. Квадро - когда в четырёх клетках какой-либо одной структуры находятся по четыре одинаковых ЦН. Анологичные цифры в других клетках этой структуры вычёркиваем. 1.15.Используя вышеприведенные приёмы, вы сможете решать судоку разных уровней сложности. Начинать решение можно с использования любого из вышеприведёных приёмов. Я рекомендую начинать с самого простого метода Малых Квадратов МК (1.1), отмечая ВСЕ полупары (1.12) которые Вы обнаруживаете. Возможно, что эти полупары превратятся со временем в пары (1.5). Возможно, что одинаковые полупары взаимодействуя друг с другом определят ЦР. Исчерпав возможности одного приёма, переходите к использованию других, исчерпав их возвращайтесь к прежним и т.д. Если же вы не можете продвинуться в решении судоку, попробуйте раскрыть пару (1.9) или использовать табличный алгоритм решения, описанный ниже, найти несколько ЦР и продолжить решение используя вышеизложенные приёмы. 2. ТАБЛИЧНЫЙ АЛГОРИТМ РЕШЕНИЯ СУДОКУ. Эту и последующие главы можно не читать при начальном ознакомлении. Предлагается простой алгоритм решения судоку, он состоит из семи пунктов. Вот этот алгоритм: 2.П1.Рисуем таблицу судоку таким образом, чтобы в каждую маленькую клетку можно было вписать девять цифр. Если рисовать на бумаге в клетку, то каждую клетку судоку можно сделать размером в 9 клеток(3х3) 2.П2.В каждую пустую клетку каждого малого квадрата вписываем все недостающие цифры этого квадрата. 2.П3.Для каждой клетки с недостающими цифрами просматриваем её строку и столбец и вычёркиваем недостающие цифры тождественные цифрам результата встретившимся в строке или в столбце за пределами малого квадрата к которому принадлежит клетка. 2.П4.Просматриваем все клетки с недостающими цифрами. Если в какой-то клетке осталась одна цифра, то это ЦИФРА РЕЗУЛЬТАТА (ЦР), Обводим её кружочком. Обведя все ЦР кружочками переходим к п.5. Если очередное выполнение п.4 не даёт результата, то переходим к п.6. 2.П5.Просматриваем остальные клетки малого квадрата и вычёркиваем в них недостающие цифры тождественные вновь полученной цифре результата.. Затем тоже самое делаем с недостающими цифрами в строке и столбце к которым принадлежит клетка. Переходим к п.4. Если уровень судоку лёгкий, то дальнейшее решение представляет собой попеременное выполнение п.4 и п.5. 2.П6.Если очередное выполнение п.4 не даёт результата, то просматриваем все строки, столбцы и малые квадраты на предмет наличия следующей ситуации: Если в какой-нибудь строке, столбце или малом квадрате одна или более недостающих цифр появляются только один раз вместе с другими цифрами, появляющимися неоднократно, то она или они являются ЦИФРАМИ РЕЗУЛЬТАТА (ЦР). Например, если строка, столбец или малый квадрат имеет вид: 1,279,5,79,4,69,3,8,79 То Цифры 2 и 6 являются ЦР ибо они присутствуют в строке, столбце или малом квадрате в единственном экземпляре, обводим их кружком, а цифры стоящие рядом зачёркиваем. В нашем примере - это цифры 7 и 9 около двойки и цифру 9 около шестёрки. Строка, столбец или малый квадрат будут иметь вид: 1,2,5,79,4,6,3,8,79. Переходим к п.5. Если очередное выполнение п.6 не даёт результата, то идем к п.7. 2.П7.a)Отыскиваем малый квадрат, строку, или столбец в котором две клетки (и только две клетки) содержат одну и ту же пару недостающих цифр, как в этой строке (пара-69): 8,5,69,4,69,7,16,1236,239. и цифры, составляющие эту пару (6 и 9), находящиеся в других клетках, зачёркиваем - таким образом мы можем получить ЦР, в нашем случае - 1 (после зачёркивания шестёрки в клетке, где были цифры - 16). Строка приобретёт вид: 8,5,69,4,69,7,1,123,23. После выполнения п.5 наша строка будет выглядеть так: 8,5,69,4,69,7,1,23,23. Если такой пары нет нет, то надо поискать их (они могут существовать в неявном виде, как в этой строке): 9,45,457,2347,1,6,237,8,57 здесь пара 23 существует в неявном виде. "Очистим" её, строка примет вид: 9,45,457,23,1,6,23,8,57 Проведя такую операцию "чистки" по всем строкам, столбцам и малым квадратам мы упростим таблицу и, возможно, (см. П.6)получим новую ЦР. Если же нет, то придётся сделать выбор в какой-нибудь клетке из двух значений результата, например, в столбце: 1,6,5,8,29,29,4,3,7. Две клетки имеют по две недостающие цифры: 2 и 9. надо решится и выбрать одну из них (обвести её кружком) - превратить в ЦР, а вторую зачеркнуть в одной клетке и сделать наоборот в другой. Ещё лучше, если есть цепочка пар, то, для большего эффекта желательно воспользоваться ей. Цепочка пар - это две или три пары из одинаковых цифр расположенные таким образом, что клетки одной пары принадлежат одновремённо двум парам. Пример цепочки пар образованной парой 12: Строка 1: 3,5,12,489,489,48,12,7,6. Столбец 3: 12,7,8,35,6,35,12,4,9. Малый квадрат 7: 8,3,12,5,12,4,6,7,9. В этой цепочке верхняя клетка пары столбца принадлежит ещё и паре первой строки, а нижняя клетка пары столбца является частью пары седьмого малого квадрата. Переходим к п.5. Наш выбор (п7)будет либо правильным и тогда мы решим судоку до конца, либо неправильным и тогда мы скоро обнаружим это (в одной строке, столбце или малом квадрате появятся две одинаковые цифры результата), надо будет вернуться, сделать выбор противоположный ранее сделанному и продолжить решение до победы. Перед выбором необходимо сделать копоию актуального состояния. Делать выбор стоит в последнюю очередь после б) и в). Иногда выбора в одной паре бывает недостаточно (после определения нескольких ЦР продвижение останавливается), в этом случае необходимо раскрыть ещё одну пару. Это бывает в сложных судоку. 2.П7.б)Если поиск пар не увенчался успехом, пытаемся отыскать малый квадрат, строку или столбец в котором три клетки (и только три клетки) содержат одну и туже триаду недостающих цифр, как в этом малом квадрате (триада - 189): 139,2,189,7,189,189,13569,1569,4. и цифры составляющие триаду (189), находящиеся в других клетках, зачёркиваем - таким образом мы можем получить ЦР. В нашем случае - это 3 - после зачёркивания недостающих цифр 1 и 9 в клетке, где были цифры 139. Малый квадрат будет иметь вид: 3,2,189,7,189,189,356,56,4. После выполнения п.5 наш малый квадрат приобретёт вид: 3,2,189,7,189,189,56,56,4. 2.П7.в)Если и с триадами не повезло, то надо провести анализ основанный на том, что каждая строка или столбец принадлежат трём малым квадратам, состоят как бы из трёх частей и если в каком-то квадрате какая-то цифра принадлежит одной строке (или столбцу) только в этом квадрате, то эта цифра не может принадлежать двум остальным строкам (столбцам) в этом же малом квадрате. Пример. Рассмотрим малые квадраты 1,2,3 образованные строками 1,2,3. Стр.1: 12479,8,123479;1679,5,679;36,239,12369. Стр.2: 1259,1235,6;189,4,89;358,23589,7. Стр.3: 1579,15,179;3,179,2;568,4,1689. Кв.3: 36,239,12369;358,23589,7;568,4,1689. Видно, что недостающие цифры 6 в Стр.3 находятся только в Кв.3, а в Стр.1 - в Кв2 и в Кв3. Исходя из вышеизложенного зачёркиваем цифры 6 в клетках Стр.1. в Кв3., получим: Стр.1: 12479,8,123479;1679,5,679;3,239,1239. Мы получили Цр 3(7,1) в Кв3. После выполнения П.5 строка примет вид: Стр.1: 12479,8,12479;1679,5,679;3,29,129. А Кв3. будет иметь вид: Кв.3: 3,29,129;58,2589,7;568,4,1689. Проводим такой анализ для всех цифр от 1 до 9 по строкам последовательно для троек квадратов: 1,2,3; 4,5,6; 7,8,9. Затем - по столбцам для троек квадратов: 1,4,7; 2,5,8; 3,6,9. Если этот анализ не дал результата, то идём к а) и делаем выбор в парах. Работа с таблицей требует большой аккуратности и внимания. Поэтому, определив несколько ЦР (5 - 15) нужно пробовать продвигаться далее более простыми приёмами изложенными в I. 3.ПРАКТИЧЕСКИЕ УКАЗАНИЯ. На практике п.3 (вычёркивание) выполняем не для каждой клетки отдельно, а сразу для целой строки, или для целого столбца. Это ускоряет процесс. Контроль вычёркиания легче осуществлять, если вычёркивание выполнять двумя цветами. Вычёркивание по строкам-одним цветом, а вычёркивание по столбцам-другим. Это позволит контролировать вычёркивание не только на недовычёркивание, но и на его излишек. Далее выполняем п.4. Все клетки с недостающими цифрами результата просматриваем только при первом выполнении п.4 после выполнения п.3. При последующих выполнениях п.4 (после выполнения п.5) просматриваем один малый квадрат, одну строку и один столбец для каждой вновь полученной цифры результата (ЦР). Перед выполнением п.7 , в случае волевого раскрытия пары, надо сделать копию актуального состояния таблицы, чтобы уменьшить объём работы, если придётся возвращаться к точке выбора. 4.ПРИМЕР РЕШЕНИЯ СУДОКУ ТАБЛИЧНЫМ СПОСОБОМ. Для закрепления вышеизложенного решим судоку средней сложности (Рис.4.3). Результат решения показан на Рис.4.4. НАЧАЛО П.1.Рисуем большую таблицу. П.2.В каждую пустую клетку каждого малого квадрата вписываем все недостающие цифры результата этого квадрата (Рис.1). Для малого квадрата N1 это - 134789; для малого квадрата N2 это - 1245; для малого квадрата N3 это - 1256789, и т.д. П.3.Выполняем в соответствии с практическими указаниями для этого пункта (См.). П.4.Просматриваем ВСЕ клетки с недостающими цифрами результата. Если в какой - то клетке осталась одна цифра, то это - ЦР обводим её кружком. В нашем случае это ЦР5(6,1)-1 и ЦР6(5,7)-2. переносим эти цифры в игровое поле судоку. Таблица после выполнения п.1, п.2, п.3 и п.4 показана на Рис.1. Две ЦР обнаруженные при выполнении п.4 обведены кружками, это 5(6,1) и 6(5,7). Желающие получить полное представление о процессе решения должны нарисовать себе таблицу с исходными цифрами, самостоятельно выполнить п.1, п.2, п.3, п.4 и сравнить свою таблицу с Рис.1, если картинки одинаковы, то можно двигаться дальше. Это первая контрольная точка. Продолжаем решение. Желающие поучаствовать могут отмечать его этапы на своём рисунке. П.5.Вычёркиваем цифру 5 в клетках малого квадрата N2, строки N1 и столбца N6, это "пятёрки" в клетках с координатами: (9,1), (4,2), (6,5) и (6,6); вычёркиваем цифру 6 в клетках малого квадрата N8, строки N7 и столбца N5, это "шестёрки" в клетках с координатами: (6,8), (2,7), (3,7), (5,4) и (5,5)(5,6). На Рис.1 они вычеркнуты, а на Рис.2 их уже нет вообще. На Рис.2 все ранее вычеркнутые цифры убраны, это сделано для упрощения рисунка. Согласно алгоритму возвращаемся к П.4. П.4. Обнаружена ЦР9(5,5)-3, обводим её кружочком, переносим. П.5.Вычёркиваем "девятки" в клетках с координатами: (5,6) и (9,5), переходим к п.4. П.4 Нет результата. Переходим к п,6. П.6. В малом квадрате N8 имеем: 78, 6, 9, 3, 5, 47, 47, 2, 1. Цифра 8(4,7) встречается только один раз - это ЦР8-4, обводим её кружком, а рядом стоящую цифру 7 зачёркиваем. Переходим к п.5. П.5. Вычёркиваем цифру 8 в клетках строки N7 и столбца N4. Переходим к п. 4. П.4. Нет результата. П.6. В малом квадрате N9 имеем: 257, 25, 4, 2789, 289, 1, 79, 6, 379. Цифра 3(9,9) встречается один раз - это ЦР3(9,9)-5, обводим её кружком, переносим (см Рис.4.4), а рядом стоящие цифры 7 и 9 зачёркиваем. П.5. Вычёркиваем цифру 3 в клетках строки N9 и столбца N9. П.4. Нет результата. П.6. В малом квадрате N2 имеем: 6, 7, 5, 24, 8, 3, 9, 14, 24. Цифра 1(5,3) - ЦР1-6, обводим её кружком. П.5. Вычёркиваем. П.4 Нет результата. П.6. В малом квадрате N1 имеем: 18, 2, 19, 6, 1479, 179, 5, 347, 37. Цифра 8(1,1) - ЦР8-7, обводим её кружком. П.5. Вычёркиваем. П.4.Цифры 9(9,1) - ЦР9-8, обводим её кружком. П.5. Вычёркиваем. П.4. Цифра 1(3,1) - ЦР1-9. П.5. Вычёркиваем. П.4. Нет результата. П.6. Строка N5, имеем: 12, 8, 4, 256, 9, 26, 3, 7, 56. Цифра 1(1,5) - ЦР1-10, обводим. П..5. Вычёркиваем. П.4. Нет результата П.6. Столбец N2 имеем: 2, 479, 347, 367, 8, 367, 137, 4679, 5. Цифра 1(2,7) - ЦР1-11. Это вторая контрольная точка. Если ваш рисунок ув. читатель, в этом месте полностью совпадает с Рис.2, то Вы на правильном пути! Продолжайте заполнять его далее самостоятельно. П.5. Вычёркиваем. П.4. Нет результата П.6. Столбец N9 Имеем: 9, 57, 678, 56, 56, 2, 4, 1, 3. Цифра 8(9,3) - ЦР8-12. П.5. Вычёркиваем, П.4. Цифра 2(8,3) - ЦР2-13. П.5. Вычёркиваем. П.4 ЦР5(8,7)-14, ЦР4(6,3)-15. П.5. Вычёркиваем. П.4. ЦР2(4,2)-16, ЦР7(6,8)-17, ЦР1(8,2)-18. П.5. Вычёркиваем. П,4. ЦР4(8,4)-19, ЦР4(4,9)-20, ЦР6(6,6)-21. П.5. Вычёркиваем. П.4. ЦР3(5,4)-22, ЦР7(1,9)-23, ЦР2(6,5)-24. П.5. Вычёркиваем. П.4 ЦР3(1,6)-25, ЦР9(7,9)-26, ЦР4(5,6)-27. П.5. Вычёркиваем. П.4. ЦР: 2(1,7)-28, 8(8,8)-29, 5(4,5)-30, 7(2,6)-31. П.5. Вычёркиваем. П.4. ЦР: 3(3,7)-32, 7(7,7)-33, 4(1,8)-34, 9(8,6)-35, 2(7,8)-36, 6(9,5)-37, 7(4,4)-38, 3(2,3)-39, 6(2,4)-40, 5(3,6)-41. П.5. Вычёркиваем. П.4. ЦР: 7(3,3)-42, 6(7,3)-43, 5(7,2)-44, 5(9,4)-45, 2(3,4)-46, 8(7,6)-47, 9(2,8)-48. П.5 Вычёркиваем. П.4. ЦР: 9(3,2)-49, 7(9,2)-50, 1(7,4)-51, 4(2,2)-52, 6(3,8)-53. КОНЕЦ! Решение судоку табличным способом дело хлопотное и нет необходимости на практике доводить его до самого конца, также как и решать судоку этим способом с самого начала. 5..shtml

  • Tutorial

1. Основы

Большинство из нас, хабражителей, знает, что такое судоку . Не буду рассказывать про правила, а сразу перейду к методикам.
Для решения головоломки, не важно сложной или простой, изначально ищутся ячейки очевидные для заполнения.


1.1 «Последний герой»

Рассмотрим седьмой квадрат. Всего четыре свободных клетки, значит что-то можно быстро заполнить.
"8 " на D3 блокирует заполнение H3 и J3 ; точно также "8 " на G5 закрывает G1 и G2
С чистой совестью ставим "8 " на H1

1.2 «Последний герой» в строке

После просмотра квадратов на очевидные решения, переходим к столбцам и строкам.
Рассмотрим "4 " на поле. Понятно, что она будет где-то в строке A .
У нас есть "4 " на G3 , что зыкрывает A3 , есть "4 " на F7 , убирающая A7 . И ещё одна "4 " во втором квадрате запрещает её повтор на A4 и A6 .
«Последний герой» для нашей "4 " это A2

1.3 «Выбора нет»

Иногда есть несколько причин для конкретного расположения. "4 " в J8 будет отличным примером.
Синие стрелки показывают, что это последнее возможное число в квадрате. Красные и синие стрелки дают нам последнее число в столбце 8 . Зеленые стрелки дают последнее возможное число в строке J .
Как видим, выбора у нас нет, кроме как поставить эту "4 " на место.

1.4 «А кто, как не я?»

Заполнение чисел проще проводить вышеописанными методами. Однако проверка числа, как последнего возможного значения, тоже даёт результаты. Метод стоит применять, когда кажется, что все числа есть, но чего-то не хватает.
"5 " в B1 ставится исходя из того, что все числа от "1 " до "9 ", кроме "5 " есть в строке, столбце и квадрате (отмечено зеленым).

На жаргоне это "Голая одиночка ". Если заполнять поле возможными значениями (кандидатами), то в ячейке такое число будет единственным возможным. Развивая эту методику, можно искать "Скрытые одиночки " - числа, уникальные для конкретной строки, столбца или квадрата.

2. «Голая миля»

2.1 «Голые» пары
"«Голая» пара " - набор из двух кандидатов, расположенных в двух ячейках, принадлежащих одному общему блоку: строке, столбцу, квадрату.
Понятно, что правильные решения головоломки будут только в этих ячейках и только с этими значениями, в то время как все другие кандидаты из общего блока могут быть убраны.


В этом примере несколько «голых пар».
Красным в строке А выделены ячейки А2 и А3 , обе содержащие "1 " и "6 ". Я пока не знаю, как именно они расположены здесь, но я спокойно могу убрать все другие "1 " и "6 " из строки A (отмечено желтым). Также А2 и А3 принадлежат общему квадрату, поэтому убираем "1 " из C1 .


2.2 «Threesome»
«Голые тройки» - усложненный вариант «голых пар».
Любая группа из трех ячеек в одном блоке содержащая в общем три кандидата является «голой тройкой» . Когда такая группа нашлась, эти три кандидата могут быть убраны из других ячеек блока.

Комбинации кандидатов для «голой тройки» могуть быть такими:

// три числа в трех ячейках.
// любые комбинации.
// любые комбинации.

В этом примере все довольно очевидно. В пятом квадрате ячейки E4 , E5 , E6 содержат [5,8,9 ], [5,8 ], [5,9 ] соответственно. Получается, что в общем у этих трех ячеек есть [5,8,9 ], и только эти числа там могут быть. Это позволяет нам убрать их из других кандидатов блока. Этот трюк даёт нам решение "3 " для ячейки E7 .

2.3 «Великолепная четверка»
"«Голая» четверка" весьма редкое явление, особенно в полной форме, и все же дает результаты при обнаружении. Логика решения такая же как и у «голых троек» .

В указанном примере в первом квадрате ячейки A1 , B1 , B2 и C1 в общем содержат [1,5,6,8 ], поэтому эти числа займут только эти ячейки и никакие другие. Убираем подсвеченных желтым кандидатов.

3. «Все тайное становится явным»

3.1 Скрытые пары
Отличным способом раскрыть поле будет поиск скрытых пар . Этот метод позволяет убрать лишних кандидатов из ячейки и дать развитие более интересным стратегиям.

В этой головоломке мы видим, что 6 и 7 есть в первом и втором квадратах. Кроме этого 6 и 7 есть в столбце 7 . Комбинируя эти условия, мы можем утверждать, что в ячейках A8 и A9 будут только эти значения и все другие кандидаты мы убираем.


Более интересный и сложный пример скрытых пар . Синим выделена пара [2,4 ] в D3 и E3 , убирающая 3 , 5 , 6 , 7 из этих ячеек. Красным выделены две скрытые пары, состоящие из [3,7 ]. C одной стороны, они уникальны для для двух ячеек в 7 столбце, с другой стороны - для строки E . Выделеные желтым кандидаты убираются.

3.1 Скрытые тройки
Мы можем развить скрытые пары до скрытых троек или даже скрытых четверок . Скрытая тройка состоит из трех пар чисел, расположенных в одном блоке. Такие как , и. Однако, как и в случае с «голыми тройками» , в каждой из трех ячеек не обязательно должно быть по три числа. Сработают всего три числа в трех ячейках. Например , , . Скрытые тройки будут замаскированы другими кандидатами в ячейках, поэтому сначала надо убедиться, что тройка применима к конкретному блоку.


В этом сложном примере есть две скрытые тройки . Первая, отмеченная красным, в столбце А . Ячейка А4 содержит [2,5,6 ], A7 - [2,6 ] и ячейка A9 -[2,5 ]. Эти три ячейки единственные, где могут быть 2 ,5 или 6, поэтому только они там и будут. Следовательно убираем лишних кандидатов.

Вторая, в столбце 9 . [4,7,8 ] уникальны для ячеек B9 , C9 и F9 . Используя ту же логику, убираем кандидатов.

3.1 Скрытые четверки

Прекрасный пример скрытых четверок . [1,4,6,9 ] в пятом квадрате могут быть только в четырех ячейках D4 , D6 , F4 , F6 . Следуя нашей логике, убираем всеъ других кандидатов (отмеченых желтым).

4. «Нерезиновая»

Если любое из чисел появляется дважды или трижды в одном блоке (строке, столбце, квадрате), тогда мы можем убрать это число из сопряженного блока. Есть четыре вида сопряжения:

  1. Пара или Тройка в квадрате - если они расположены в одной строке, то можно убрать все другие такие же значения из соответствующей строки.
  2. Пара или Тройка в квадрате - если они расположены в одном столбце, то можно убрать все другие такие же значения из соответствующего столбца.
  3. Пара или Тройка в строке - если они расположены в одном квадрате, то можно убрать все другие такие же значения из соответствующего квадрата.
  4. Пара или Тройка в столбце - если они расположены в одном квадрате, то можно убрать все другие такие же значения из соответствующего квадрата.
4.1 Указавыющие пары, тройки

В качестве примера покажу эту головоломку. В третьем квадрате "3 " находится только в B7 и B9 . Следуя утверждению №1 , мы убираем кандидатов из B1 , B2 , B3 . Аналогично, "2 " из восьмого квадрата убирает возможное значение из G2 .


Особенная головоломка. Очень сложная в решении, но, если присмотреться, можно заметить несколько указывающих пар . Понятно, что не всегда обязательно находить их все, чтобы продвинуться в решении, однако каждая такая находка облегчает нам задачу.

4.2 Сокращаем несокращаемое

Эта стратегия включает в себя аккуратный анализ и сравнение строк и столбцов с содержимым квадратов (правила №3 , №4 ).
Рассмотрим строку А . "2 " возможны только в А4 и А5 . Следуя правилу №3 , убираем "2 " их B5 , C4 , C5 .


Продолжим решать головоломку. Имеем единственное расположение "4 " в пределах одного квадрата в 8 столбце. Согласно правилу №4 , убираем лишних кандитатов и, в добавок, получаем решение "2 " для C7 .

Первое, с чем следовало бы определиться в методологии решения проблем, это вопрос собственно понимания того, чего мы достигаем и можем достигнуть в вопросах решения проблем. Понимание обычно мыслится как нечто само собой разумеющееся, и мы упускаем из виду тот момент, что понимание имеет определенную начальную точку отсчета понимания, лишь относительно которой мы можем говорить о том, что понимание действительно имеет место с определенного нами конкретного момента. Судоку здесь, в нашем рассмотрении, удобна тем, что позволяет на ее примере в некоторой мере смоделировать вопросы понимания и решения проблем. Однако начнем мы с несколько иных и не менее важных, чем судоку, примеров.

Физик, изучающий специальную теорию относительности, может говорить о "кристально ясных" положениях Эйнштейна. Такое словосочетание мне встретилось на одном из сайтов в интернете. Но с чего начинается это понимание "кристальной ясности". Оно начинается с усвоение математической записи постулатов, из которых могут строиться по известным и понятным правилам все многоэтажные математические конструкции СТО. Но чего не понимает физик, как и я, это почему работают постулаты СТО именно так, а не иначе.

Прежде всего, подавляющее большинство обсуждающих это учение не понимают, что именно заключается в постулате постоянства скорости света в переложении из математического его применения на реальность. А этот постулат подразумевает постоянство скорости света во всех мыслимых и не мыслимых смыслах. Скорость света постоянна относительно любых покоящихся и движущих объектов разом. Скорость луча света, согласно постулату, постоянна даже относительно встречного, поперечного и удаляющегося луча света. А, при этом, реально мы имеем лишь замеры, косвенно связанные со скоростью света, интерпретируемые как ее постоянство.

Законы Ньютона для физика и даже для просто изучающих физику столь привычны, что представляются настолько понятными, как нечто само собой разумеющееся и иного быть не может. Но, скажем, применение закона всемирного тяготения начинается с его математической записи, по которой можно рассчитать даже траектории космических объектов и характеристики орбит. Но почему эти законы работают именно так, а не иначе – такого понимания у нас нет.

Аналогично и судоку. В интернете можно найти многократно повторяющиеся описания "базовых" способов решения задач судоку. Если запомнить эти правила, то можно понимать как решается та или иная задача судоку посредством применения "базовых" правил. Но у меня вопрос: а понимаем ли мы, почему эти "базовые" способы срабатывают именно так, а не иначе.

Итак, мы переходим к следующему ключевому положению в методологии решения проблем. Понимание возможно только на основе какой-то модели, предоставляющей базу для этого понимания и возможность произвести некоторый натурный или мысленный эксперимент. Без этого мы можем иметь лишь правила применения заученных исходных положений: постулатов СТО, законов Ньютона или "базовых" способов в судоку.

У нас нет и в принципе не может быть моделей, удовлетворяющих постулату ничем не ограничиваемого постоянства скорости света. У нас нет, но могут быть придуманы недоказуемые модели, согласующиеся с законами Ньютона. И такие "ньютоновские" модели есть, но они как-то не впечатляют продуктивными возможностями для проведения натурного или мысленного эксперимента. Зато судоку предоставляет нам такие возможности, которые мы можем использовать и для понимания собственно задач судоку, и для иллюстрации моделирования, как общего подхода в решении проблем.

Одна из возможных моделей задач судоку – это рабочая таблица. Создается она простым заполнением всех пустых клеток (ячеек) заданной в задаче таблицы числами 123456789. Далее задача сводится к последовательному удалению всех лишних цифр из ячеек до тех пор, пока все клетки таблицы будут заполнены единичными (эксклюзивными) цифрами, удовлетворяющими условию задачи.

Я создаю такую рабочую таблицу в Excel. Сначала выделяю все пустые ячейки (клетки) таблицы. Нажимаю F5-"Выделить"-"Пустые ячейки"-"OK". Более общий способ выделения нужных ячеек: удерживаю Ctrl и кликом мышки выделяю эти ячейки. Затем для выделенных ячеек устанавливаю синий цвет, размер 10 (исходный – 12) и шрифт Arial Narrow. Это все для того, чтобы хорошо просматривались последующие изменения в таблице. Далее я ввожу в пустые клетки числа 123456789. Делаю это следующим образом: записываю и сохраняю это число в отдельной ячейке. Затем нажимаю на F2, выделяю и копирую это число операцией Ctrl+C. Далее перехожу к ячейкам таблицы и, последовательно обходя все пустые ячейки, ввожу в них число 123456789 операцией Ctrl+V, и рабочая таблица готова.

Лишние цифры, о которых будет речь далее, я удаляю следующим образом. Операцией Ctrl+клик мышкой - выделяю ячейки с лишней цифрой. Затем нажимаю Ctrl+H и в верхнее поле открывшегося окошка ввожу удаляемую цифру, а нижнее поле должно быть совершенно пустым. Далее остается щелкнуть по опции "Заменить все" и лишняя цифра удалена.

Судя по тому, что мне обычно удается сделать более продвинутую обработку таблиц обычными "базовыми" способами, чем в примерах, приводимых в интернете, рабочая таблица является наиболее простым инструментом в решении задач судоку. Более того, многие ситуации, касающиеся применения наиболее сложных из так называемых "базовых" правил, у меня в рабочей таблице попросту не возникали.

В то же время, рабочая таблица – это и модель, на которой можно провести эксперименты с последующим выявлением всех "базовых" правил и разных нюансов их применения, вытекающего из экспериментов.

Итак, перед вами фрагмент рабочей таблицы с девятью блоками, нумеруемыми слева-направо и сверху-вниз. В данном случае у нас заполнен цифрами 123456789 четвертый блок. Это и есть наша модель. Вне блока красным цветом мы выделили "активированные" (окончательно определенные) цифры, в данном случае четверки, которые намерены подставить в оформляемую таблицу. Голубые пятерки – это пока не определенные относительно их дальнейшей роли цифры, о которых после поговорим. Назначенные нами активированные цифры как бы вычеркивают, выталкивают, удаляют – в общем, вытесняют одноименные цифры в блоке, поэтому там они представлены бледным цветом, символизирующим тот факт, что эти бледные цифры удалены. Хотел было сделать этот цвет еще бледнее, но тогда они могли бы стать вообще не заметными при просмотре в интернете.

В итоге в четвертом блоке в ячейке E5 оказалась одна, тоже активированная, но скрытая четверка. "Активированная" потому, что она, в свою очередь тоже может удалять лишние цифры, если таковые окажутся на ее пути, а "скрытая" потому, что она находится среди других цифр. Если ячейку E5 атаковать остальными, кроме 4, активированными цифрами 12356789, то в E5 возникнет "голая" одиночка – 4.

Теперь уберем одну активированную четверку, например из F7. Тогда четверка в заполненном блоке может оказаться уже и только в ячейке E5 или F5, оставаясь при этом активированной в строке 5. Если к этой ситуации привлечь активированные пятерки, без F7=4 и F8=5, то в ячейках E5 и F5 возникнет голая или скрытая активированная пара 45.

После того как вы в достаточной мере отработаете и осмыслите разные варианты с голыми и скрытыми одиночками, двойками, тройками и т.д. не только в блоках, но и в строках и столбцах, мы можем перейти к еще одному эксперименту. Создадим голую пару 45, как было сделано раньше, а потом подключим активированные F7=4 и F8=5. В результате возникнет ситуация E5=45. Подобные ситуация очень часто возникает в процессе обработки рабочей таблицы. Такая ситуация означает, что одна из этих цифр, в данном случае 4 или 5, обязательно должна находиться в блоке, строке и столбце, включающих в себя ячейку E5, потому что во всех этих случаях должны присутствовать две цифры, а не одна из них.

А главное, мы теперь уже знаем, каким образом возникают часто встречающиеся ситуации, подобные E5=45. Подобным же образом определимся с ситуациями, когда в одной ячейке возникает тройка цифр и т.п. И когда мы доведем степень осмысления и восприятия этих ситуаций до состояния самоочевидности и простоты, тогда следующий шаг – это уже, так сказать, научное осмысление ситуаций: мы тогда сможем делать статистический анализ таблиц судоку, выявлять закономерности и использовать наработанный материал для решения самых сложнейших задач.

Таким образом, экспериментируя на модели, мы получаем наглядное и даже "научное" представление относительно скрытых или открытых одиночек, пар, троек и т.д. Если вы ограничитесь только операциями с описанной простой моделью, то некоторые ваши представления окажутся неточными или даже ошибочными. Однако как только вы перейдете к решению конкретных задач, то неточности первоначальных представлений быстро выявятся, ну а модели, на которых проводились эксперименты, придется переосмыслить и уточнить. Таков неизбежный путь гипотез и уточнений в решении любых проблем.

Надо сказать, что скрытые и открытые одиночки, а также открытые пары, тройки и даже четверки, – это обычные ситуации, возникающие при решении задач судоку с рабочей таблицей. Скрытые пары случались редко. А вот скрытые тройки, четверки и т.д. мне при обработке рабочих таблиц как-то не попадались, так же, как и многократно описанные в интернете методы обхода контуров "x-wing" и "рыба-меч", при которых возникают "кандидаты" на удаление при любом из двух альтернативных способов обхода контуров. Смысл этих способов: если уничтожаем "кандидата" х1, то остается эксклюзивный кандидат х2 и при этом удаляется кандидат х3, а если уничтожаем х2, то остается эксклюзивный х1, но и в этом случае удаляется кандидат х3, так что в любом случае следует удалить х3, не затрагивая пока кандидатов х1 и х2. В более общем плане, это частный случай ситуации: если два альтернативных способа приводят к одному и тому же результату, то этот результат может использоваться для решения задачи судоку. В таком, более общем, плане ситуации мне встречались, но не в варианте "x-wing" и "рыба-меч" и не при решении задач судоку, для которых достаточно знания лишь "базовых" подходов.

Особенности применения рабочей таблицы можно показать на следующем нетривиальном примере. На одном из форумов решателей судоку http://zforum.net/index.php?topic=3955.25;wap2 мне встретилась задача, представленная как одна из сложнейших задач судоку, не решаемая обычными способами, без применения перебора с допущениями относительно подставляемых в ячейки цифр. Покажем, что с рабочей таблицей можно решить эту задачу без подобного перебора:

Справа исходная задача, слева рабочая таблица после "вычеркивания", т.е. рутинной операции удаления лишних цифр.

Сначала договоримся об обозначениях. ABC4=689 означает, что в ячейках A4, B4 и C4 находятся цифры 6, 8 и 9 – по одной или по несколько цифр на ячейку. Со строками аналогично. Так, B56=24 означает, что в ячейках В5 и В6 находятся цифры 2 и 4. Знак ">" – это знак обусловленного действия. Так, D4=5>I4-37 означает, что вследствие сообщения D4=5 следует поместить число 37 в ячейку I4. Сообщение может быть явным – "голым" – и скрытым, которое следует выявить. Воздействие сообщения может быть последовательным (передаваться опосредованно) по цепочке и параллельным (воздействовать непосредственно на другие ячейки). Например:

D3=2; D8=1>A9-1>A2-2>A3-4,G9-3; (D8=1)+(G9=3)>G8-7>G7-1>G5-5

Эта запись означает, что D3=2, но этот факт нужно выявить. D8=1 передает A3 свое воздействие по цепочке и в A3 следует записать 4; одновременно D3=2 воздействует непосредственно на G9, что приводит к результату G9-3. (D8=1)+(G9=3)>G8-7 – совместное воздействие факторов (D8=1) и (G9=3) приводит к результату G8-7. И т.п.

В записях может также встретиться сочетание типа H56/68. Оно означает, что в ячейках H5 и H6 запрещены цифры 6 и 8, т.е. их следует из этих ячеек удалить.

Итак, начинаем работу с таблицей и для начала применяем хорошо проявленное, заметное условие ABC4=689. Это означает, что во всех остальных (кроме A4, B4 и C4) ячейках блока 4 (средний, левый) и 4-й строки должны быть удалены цифры 6, 8 и 9:

Аналогичным образом применяем B56=24. В совокупности имеем D4=5 и (после D4=5>I4-37) HI4=37, а также (после B56=24>C6-1) C6=1. Применим это к рабочей таблице:

В I89=68скрытая>I56/68>H56-68: т.е. в ячейках I8 и I9 находится скрытая пара цифр 5 и 6, которая запрещает нахождение этих цифр в I56, что приводит к результату H56-68. Этот фрагмент мы можем рассмотреть по другому, подобно тому, как это делали в экспериментах на модели рабочей таблицы: (G23=68)+(AD7=68)>I89-68; (I89=68)+(ABC4=689)>H56-68. То есть, двусторонняя "атака" (G23=68) и (AD7=68) приводит к тому, что в I8 и I9 могут находиться только цифры 6 и 8. Далее (I89=68) подключается к "атаке" на H56 совместно с предыдущими условиями, что и приводит к H56-68. Дополнительно к этой "атаке" подключается (ABC4=689), что в данном примере выглядит излишним, однако если бы мы работали без рабочей таблицы, то фактор воздействия (ABC4=689) оказался бы скрытым, и вполне уместным было бы обратить на него внимание специально.

Следующее действие: I5=2>G1-2,G6-9,B6-4,B5-2.

Надеюсь, оно уже понятно без комментариев: подставляйте цифры, которые стоят после тире, не ошибетесь:

H7=9>I7-4; D6=8>D1-4,H6-6>H5-8:

Следующая серия действий:

D3=2; D8=1>A9-1>A2-2>A3-4,G9-3;

(D8=1)+(G9=3)>G8-7>G7-1>G5-5;

D5=9>E5-6>F5-4:

I=4>C9-4>C7-2>E9-2>EF7-35>B7-7,F89-89,

то есть, в результате "вычеркивания" – удаления лишних цифр – в ячейках F8 и F9 возникает открытая, "голая" пара 89, которую, вместе с другими результатами, указанными в записи, применяем к таблице:

H2=4>H3-1>F2-1>F1-6>A1-3>B8-3,C8-5,H1-7>I2-5>I3-3>I4-7>H4-3

Их результат:

Затем следуют довольно рутинные, очевидные действия:

H1=7>C1-8>E1-5>F3-7>E2-9>E3-8,C3-9>B3-5>B2-6>C2-7>C4-6>A4-9>B4-8;

B2=6>B9-9>A8-6>I8-8>F8-9>F9-8>I9-6;

E7=3>F7-5,E6-7>F6-3

Их результат: окончательное решение задачи:

Так или иначе, будем считать, что с "базовыми" способами в судоку или в иных областях интеллектуального приложения мы разобрались на основе подходящей для этого модели и даже научились их применять. Но это лишь часть нашего продвижения в методологии решения проблем. Далее, повторюсь, следует не всегда учитываемый, но непременный этап доведения предварительно усвоенных способов до состояния простоты их применения. Решение примеров, осмысливание результатов и способов этого решения, переосмысливание этого материала на основе принятой модели, снова продумывание всех вариантов с доведением степени их понимания до автоматизма, когда решение с применением "базовых" положений становится рутинных и исчезает как проблема. Что это дает: это каждый должен прочувствовать на своем опыте. А суть в том, что когда проблемная ситуация становится рутинной, то поисковый механизм интеллекта направляется к освоению все более сложных положений в области решаемых проблем.

А что такое "более сложные положения"? Это всего лишь новые "базовые" положения в решении проблемы, понимание которых, в свою очередь, тоже можно довести до состояния простоты, если найти для этой цели подходящую модель.

В статье Василенко С.Л. "Числовая гармония Судоку" я нахожу пример задачи с 18 симметричными ключами:

Относительно этой задачи утверждается, что она может быть решена с применением "базовых" приемов только до некоторого состояния, после достижения которого остается лишь применить простой перебор с пробной подстановкой в ячейки некоторых предполагаемых эксклюзивных (единичных, одиночных) цифр. Это состояние (продвинутое чуть далее, чем в примере Василенко) имеет вид:

Такая модель есть. Это своеобразный механизм вращения выявленных и не выявленных эксклюзивных (единичных) цифр. В простейшем случае, некоторая тройка эксклюзивных цифр вращается в правом или левом направлении, переходя этой группой от строки к строке или от столбца к столбцу. В целом же, при этом вращаются в каком-то одном направлении три группы троек цифр. В более сложных случаях, три пары эксклюзивных цифр вращается в одном направлении, а тройка одиночек вращается в противоположном направлении. Так, например, происходит вращение эксклюзивных цифр в первых трех строках рассматриваемой задачи. И, что самое здесь важное, это своеобразное вращение можно заметить, рассматривая расположение цифр в обработанной рабочей таблице. Этих сведений пока достаточно, а другие нюансы модели вращения мы поймем в процессе решения задачи.

Итак, в первых (верхних) трех строках (1, 2 и3) мы можем заметить вращение пар (3+8) и (7+9), а также (2+х1) с неизвестным х1 и тройка одиночек (х2+4+1) с неизвестным х2. При этом, мы можем обнаружить, что каждое из х1 и х2 могут быть либо 5, либо 6.

В строках 4, 5 и 6 просматриваются пары (2+4) и (1+3). Должна быть также 3-я неизвестная пара и тройка одиночек из которых известна лишь одна цифра 5.

Аналогичным образом просматриваем строки 789, затем тройки столбцов ABC, DEF и GHI. Собранную информацию мы запишем в символическом и, надеюсь, достаточно понятном виде:

Пока нам эта информация нужна только для понимания общей ситуации. Тщательно продумайте ее и тогда мы сможем далее продвинуться вперед к следующей специально подготовленной для этого таблице:

Цветами я выделил альтернативные варианты. Голубой цвет означает "разрешено", а желтый – "запрещено". Если, скажем, разрешено в A2=79 разрешено A2=7, то C2=7 – запрещено. Или наоборот – разрешено A2=9, запрещено C2=9. А далее разрешения и запрещения передаются по логической цепочке. Такая расцветка сделана для того, чтобы было проще просматривать разные альтернативные варианты. В общем, это некоторая аналогия упомянутым ранее способов "x-wing" и "рыба-меч" при обработке таблиц.

Просматривая вариант B6=7 и, соответственно, B7=9, мы можем обнаружить сразу два момента, несовместимых с этим вариантом. Если B7=9, то в строках 789 возникает синхронно вращающаяся тройка, что недопустимо, так как синхронно (в одном направлении) могут вращаться либо только три пары (и три одиночки асинхронно им), либо три тройки (без одиночек). Кроме этого, если B7=9, то через несколько шагов обработки рабочей таблицы в 7-й строке обнаружим несовместимость: B7=D7=9. Так что подставляем единственно приемлемый из двух альтернативных вариант B6=9, и далее задача решается простыми средствами обычной обработки без всякого слепого перебора:

Далее, у меня есть готовый пример с применением модели вращения для решения задачи из чемпионата мира по судоку, но этот пример я опускаю, чтобы слишком уж не растягивать данную статью. К тому же, как оказалось, эта задача имеет три варианта решения, что плохо подходит для первоначального освоения модели вращения цифр. Еще я изрядно "попыхтел" над вытащенной из интернета задачей Гэри МакГайра с 17 ключами для решения его головоломки, пока с еще более изрядным раздражением не выяснил, что эта "головоломка" имеет более 9 тысяч вариантов решения.

Итак, волей-неволей, приходится переходить к разработанной Арто Инкала "самой сложной в мире" задаче судоку, имеющей, как известно, единственное решение.

После внесения двух вполне очевидных эксклюзивных цифр и обработки рабочей таблицы, задача имеет следующий вид:

Черным и более крупным шрифтом выделены ключи, заданные исходной задаче. Чтобы продвинуться в решении этой задачи, мы снова должны опереться на адекватную, подходящую для этой цели модель. Модель эта – своеобразный механизм вращения цифр. Она уже не однажды обсуждалась в этой и предыдущих статьях, но чтобы понять дальнейший материал статьи, этот механизм следует продумать и проработать в деталях. Примерно так, как если бы вы поработали с таким механизмом эдак с десяток лет. Но вы все равно сможете понять этот материал если не с первого чтения, то со второго или третьего и т.д. Более того, если проявите настойчивость, то и этот "сложный для понимания" материал вы доведете до состояния его рутинности и простоты. Нового в этом плане здесь ничего нет: то, что сначала очень сложно, постепенно становится не так уж сложным, а при дальнейшей непрекращающейся проработке все самым очевидным и не требующих умственных усилий становится на свои подобающие места, после чего вы можете освободить свой умственный потенциал для дальнейшего продвижения вперед по данной решаемой проблеме или относительно других проблем.

При внимательном анализе структуры задачи Арто Инкала можно заметить, что вся она построена по принципу трех синхронно вращающихся пар и тройки вращающихся асинхронно парам одиночек: (х1+х2)+(х3+х4)+(х5+х6)+(х7+х8+х9). Порядок вращения может быть, например, такой: в первых трех строках 123 первая пара (х1+х2) переходит из первой строки первого блока во вторую строку второго блока, затем в третью строку третьего блока. Вторая пара переходит из второй строки первого блока в третью строку второго блока, затем, в этом вращении, перепрыгивает в первую строку третьего блока. Третья пара из третьей строки первого блока перепрыгивает в первую строку второго блока и далее в этом же направлении вращения переходит во вторую строку третьего блока. Тройка одиночек движется в подобном режиме вращения, но в противоположном вращению пар. Ситуация со столбцами выглядит аналогично: если таблицу мысленно (или реально) повернуть на 90 градусов, то строки станут столбцами, с тем же, как ранее для строк, характером движения одиночек и пар.

Проворачивая в уме эти вращения применительно к задаче Арто Инкала, мы постепенно доходим до понимания очевидных ограничений на выбор вариантов этого вращения для выбранной тройки строк или столбцов:

Не должно быть синхронно (в одном направлении) вращающихся троек и пар – такие тройки, в отличие от тройки одиночек, будем в дальнейшем называть триплетами;

Не должно быть асинхронных между собой пар или асинхронных между собой одиночек;

Не должно быть вращающихся в одном (например, в правом) направлении и пар и одиночек – это повторение предыдущих ограничений, но может быть оно покажется более понятным.

Кроме этого есть и другие ограничения:

Не должно быть ни одной пары в 9-ти строках, совпадающей с парой в каком-либо из столбцов и то же самое относительно столбцов и строк. Это должно быть очевидным: потому что сам факт расположения двух цифр в одной строке свидетельствует о том, что они находятся в разных столбцах.

Еще можно сказать, что очень редко бывают совпадения пар в разных тройках строк или подобное совпадение в тройках столбцов, а также редко бывают совпадения троек одиночек в строках и/или столбцах, но это уже, так сказать, вероятностные закономерности.

Исследование блоков 4,5,6.

В блоках 4-6 возможны пары (3+7) и (3+9). Если принять (3+9), то получится недопустимое синхронное вращение триплета (3+7+9), так что имеем пару (7+3). После подстановки этой пары и последующей обработки таблицы обычными средствами получим:

При этом мы можем сказать, что 5 в B6=5 может быть лишь одиночкой, асинхронной (7+3), а 6 в I5=6 является параобразующей, так как она находится в одной строке H5=5 в шестом блоке и, следовательно, она не может быть одиночкой и может двигаться лишь синхронно с (7+3.

и расположил кандидатов на одиночки по количеству появления их в этой роли в данной таблице:

Если принять, что наиболее частотные 2, 4 и 5 и есть одиночки, то по правилам вращения с ними могут сочетаться только пары: (7+3), (9+6) и (1+8) - пара (1+9) отброшена, так как она отрицает пару (9+6). Далее после подстановки этих пар и одиночек и дальнейшей обработки таблицы обычными методами получим:

Вот такая непокорная таблица оказалась – не желает обрабатываться до конца.

Придется поднапрячься и заметить, что в столбцах ABC есть пара (7+4) и что 6 перемещается синхронно 7 в этих столбцах, поэтому 6 – параобразующая, так что в столбце "C" 4-го блока возможно лишь сочетания (6+3)+8 либо (6+8)+3. Первое из этих сочетаний не проходит, так как тогда в 7-м блоке в столбце "B" возникнет недопустимая синхронная тройка – триплет (6+3+8). Ну а далее, после подстановки варианта (6+8)+3 и обработки таблицы обычным способом приходим к благополучному завершению задачи.

Второй вариант: вернемся к таблице, полученной после выявления сочетания (7+3)+5 в строках 456 и перейдем к исследованию столбцов ABC.

Здесь мы можем заметить, что пара (2+9) не может иметь место в ABC. Другие комбинации (2+4), (2+7), (9+4) и (9+7) дают синхронную тройку - триплет в A4+A5+A6 и B1+B2+B3, что неприемлемо. Остается одна приемлемая пара (7+4). Причем 6 и 5 двигаются синхронно 7, значит они параобразующие, т.е. образуют какие-то пары, но не 5+6.

Составим список возможных пар и их сочетаний с одиночками:

Сочетание (6+3)+8 не проходит, т.к. иначе образуется недопустимая тройка-триплет в одном столбце (6+3+8), о чем уже говорили и в чем можем убедиться еще раз, проверив все варианты. Из кандидатов на одиночки больше всех очков набирает цифра 3, а наиболее вероятное из всех приведенных сочетаний: (6+8)+3, т.е. (С4=6 + C5=8) + C6=3, что дает:

Далее самый вероятный кандидат на одиночку либо 2, либо 9 (по 6 баллов), однако в любом из этих случаев остается в силе кандидат 1 (4 балла). Начнем с (5+29)+1, где 1 асинхронно 5, т.е. поставим 1 из В5=1 в качестве асинхронной одиночки во все столбцы ABC:

В блоке 7, столбец A, возможны лишь варианты (5+9)+3 и (5+2)+3. Но мы лучше обратим внимание на то, что в строках 1-3 теперь проявились пары (4+5) и (8+9). Их подстановка приводит к быстрому результату, т.е. к завершению задачи после обработки таблицы обычными средствами.

Ну а теперь, потренировавшись на предыдущих вариантах, мы можем попробовать решить задачу Арто Инкала без привлечения статистических оценок.

Снова возвращаемся в исходное положение:

В блоках 4-6 возможны пары (3+7) и (3+9). Если принять (3+9), то получится недопустимое синхронное вращение триплета (3+7+9), так что для подстановки в таблицу имеем только вариант (7+3):

5 здесь, как мы видим, одиночка, 6 – параобразующая. Допустимые варианты в ABC5: (2+1)+8, (2+1)+9, (8+1)+9, (8+1)+2, (9+1)+8, (9+1)+2. Но (2+1) асинхронна (7+3), поэтому остаются (8+1)+9, (8+1)+2, (9+1)+8, (9+1)+2. В любом случае 1 является синхронной (7+3) и, следовательно, параобразующей. Подставим 1 в этом качестве в таблицу:

Цифра 6 здесь является параобразующей в бл. 4-6, но бросающейся в глаза пары (6+4) нет в списке допустимых пар. Следовательно четверка в A4=4 асинхронна 6:

Так как D4+E4=(8+1) и согласно анализу вращения образует эту пару, то получаем:

Если ячейки C456=(6+3)+8, то B789=683, т.е. получится синхронная тройка-триплет, так что остается вариант (6+8)+3 и результат его подстановки:

B2=3 здесь одиночка, С1=5 (асинхронная 3) - параобразующая, A2=8 - также параобразующая. В3=7 может быть и синхронной и асинхронной. Теперь мы можем проявить себя и на более сложных приемах. Натренированным взглядом (или хотя бы при проверке на компьютере) мы видим, что при любом статусе В3=7 – синхронном или асинхронном – мы получаем один и тот же результат A1=1. Следовательно, мы можем подставить это значение в A1 и далее уже более обычными простыми средствами завершить нашу, вернее Арто Инкала, задачу:

Так или иначе, мы смогли рассмотреть и даже проиллюстрировать три общих подхода на пути решения проблем: определить точку понимания проблемы (не предположительный или слепо декларируемый, а реальный момент, начиная с которого мы можем говорить о понимании проблемы), выбрать модель, позволяющую реализовать понимание посредством натурного или мысленного эксперимента и – это в-третьих – довести степень понимания и восприятия достигнутых при этом результатов до состояния самоочевидности и простоты. Есть еще и четвертый подход, который применяю лично я.

У каждого человека случаются состояния, когда стоящие перед ним интеллектуальные задачи и проблемы решаются более легко, чем это бывает обычно. Эти состояния вполне можно воспроизводить. Для этого надо овладеть техникой отключения мыслей. Сначала хотя бы на доли секунды, затем, все более растягивая этот отключающий момент. Далее рассказывать, вернее рекомендовать, что-то в этом отношении не могу, потому что продолжительность применения этого метода дело сугубо личное. Но я прибегаю к этому способу порой надолго, когда передо мной встает проблема, к которой я не вижу вариантов того, как к ней можно подступиться и решить. В результате, раньше или позже из кладовых памяти выплывает подходящий прообраз модели, которая проясняет суть того, что требуется разрешить.

Задачу Инкала я решил несколькими способами, в том числе описанными в предыдущих статьях. И всегда в той или иной мере использовал этот четвертый подход с отключением и последующей концентрацией умственных усилий. Самое быстрое решение задачи я получил простым перебором – что называется "методом тыка" – правда, с использованием лишь "длинных" вариантов: тех, что могли быстро привести к выходу на положительный или отрицательный результат. Другие варианты отымали у меня больше времени, потому что основное время уходило на хотя бы черновую отработку технологии применения этих вариантов.

Хороший также вариант в духе четвертого подхода: настраиваться на решение задач судоку, подставляя лишь по единственной цифре в ячейку в процессе решения задачи. То есть, большая часть задачи и ее данных "прокручиваются" в уме. Именно так и происходит основная часть процесса решения интеллектуальных проблем, и этот навык следует тренировать ради расширения своих возможностей в решении проблем. Я, например, не профессиональный решатель судоку. У меня иные задачи. Но, тем не менее, хочу поставить перед собой такую цель: обрести умение решать задачи судоку повышенной сложности, без рабочей таблицы и не прибегая к подстановке более одной цифры в одну пустую клетку. При этом допускается любой способ решения судоку, включая и простой перебор вариантов.

О переборе вариантов я вспоминаю здесь не случайно. Любой подход к решению задач судоку предполагает в своем арсенале набор определенных способов, включая тот или иной вид перебора. При этом любой из способов, применяемых в судоку в частности или при решении любых других проблем, имеет свою область его эффективного применения. Так, при решении относительно простых задач судоку наиболее эффективны простые "базовые" способы, описанные в многочисленных статьях по этой теме в интернете, а более сложный "метод вращения" оказывается здесь зачастую бесполезным, потому что он лишь усложняет ход простого решения и при этом какой-то новой информации, проявляющейся в ходе решения задачи, не дает. Но в наиболее сложных случаях, как задача Арто Инкала, "метод вращения" может играть ключевую роль.

Судоку в моих статьях – лишь иллюстративный пример подходов к решению проблем. Среди решенных мною задач есть и на порядок посложнее, чем судоку. Например, расположенные на нашем сайте компьютерные модели работы котлов и турбин. О них я тоже был бы не против рассказать. Но пока я выбрал именно судоку, чтобы достаточно наглядным образом показать своим молодым согражданам возможные пути и этапы продвижения к конечной цели решаемых проблем.

На сегодня пока все.

– это популярный вид досуга, представляющий собой головоломку с числами, которую еще называют магическим квадратом. Ее решение позволяет развивать логическое мышление, внимание, аналитический подход. Преимущества судоку заключаются не только в пользе для мозга, а также в возможности отвлечься от проблем, полностью сконцентрироваться на задании.

Правила судоку

Данная головоломка занимает мало места, в отличие от сканвордов, кроссвордов и так далее. Игровое поле, состоящее из 81 квадратов, ячейки разбиты на малые блоки, размером 3*3. Его можно легко уместить на листке бумаги. Задание выглядит в виде выборочно заполненных клеток, которые необходимо дополнить значениями и заполнить всю табличку. В судоку правила игры очень просты и позволяют исключить множественные решения. В каждой строке или столбце проставляются цифры от 1 до 9. Также значения не повторяются в рамках одного малого блока.

Судоку различаются по уровню сложности, который зависит от количества заполненных числами клеток и методов решения. Обычно различают около 5 уровней, где самый сложный способны решить только настоящие мастера.

Игра в судоку имеет свои правила и секреты. Наиболее простые головоломки можно решить за несколько минут с помощью дедукции, как есть так всегда, как минимум, одна клетка, для которой подходит только одно число. Сложные судоку можно разгадывать часами. Правильно составленная головоломка имеет только один способ решения.

Правила, как разгадывать судоку

Чтобы получить верное решение, необходимо учесть несколько простых правил:

  • Цифра может быть записана в ячейку только в том случае, если ее нет в горизонтальной и вертикальной линии, а также в малом квадрате 3*3.
  • Если она может быть записана исключительно в одну клетку.

Если оба пункта учтены, значит можно быть уверенным, что ячейка заполнена верно.

Как решать судоку простые?

Рассмотрим на конкретном примере как разгадывать судоку. Игровое поле на картинке представляет собой относительно простой вариант игры. Правила игры судоку для простых сводятся к выявлению зависимостей в горизонтальной и вертикальной плоскости и в отдельных квадратах.

Например, в центральной вертикали не хватает цифр 3, 4, 5. Четверка не может находиться в нижнем квадрате, так как в нем уже присутствует. Также можно исключить пустую центральную клетку, так как мы видим 4 в горизонтальной линии. Из этого делаем вывод, что она располагается в верхнем квадрате. Аналогично можем проставить 3 и 5 и получить следующий результат.

Проведя линии в верхнем среднем малом квадрате 3*3 можно исключить ячейки, в которых не может находиться цифра 3.

Разгадывать Продолжая подобным образом, необходимо заполнить оставшиеся ячейки. В результате получается единственно верное решение.

Такой метод некоторые называют «Последний герой» или «Одиночка». Он также используется в качестве одного из нескольких на мастерских уровнях. Среднее время, затрачиваемое на простой уровень сложности, колеблется около 20 минут.

Как решать сложные судоку?

Многие задаются вопросом, как решать судоку, есть ли стандартные методы и стратегия. Как и в любой логической головоломке есть. Самый простой из них мы рассмотрели. Чтобы перейти на более высокий уровень, необходимо иметь больший запас времени, усидчивость, терпение. Для решения головоломки придется делать предположения и, возможно, получать неверный результат, возвращающий к месту выбора. По сути судоку сложные – это как решать задачу с помощью алгоритма. Рассмотрим несколько популярных методик, применяемых профессиональными «судокуведами» на следующем примере.

В первую очередь необходимо заполнить пустые ячейки возможными вариантами, чтобы максимально облегчить решение и иметь перед глазами полную картину.

Ответ, как решить судоку сложные для каждого свой. Кому то удобнее использовать разные цвета для окрашивания ечеек или цифр, кто то предпочитает черно-белый вариант. На рисунке видно, что нет ни одной ячейки, в которой бы стояла единственная цифра, однако, это не говорит о том, что в данном задании нет одиночек. Вооружившись правилами судоку и внимательным взглядом, можно увидеть, что в верхней строке среднего малого блока стоит цифра 5, которая встречается единожды в своей линии. В связи с этим можно смело проставить ее и исключить из ячеек, окрашенных в зеленый цвет. Данное действие повлечет за собой возможность проставить цифру 3 в оранжевой клетке и смело вычеркнуть ее из соответствующик фиолетовых по вертикали и малом блоке 3*3.

Таким же образом проверяем остальные клеточки и проставляем единицы в обведенных клетках, так как они также являются единственными в своих строках.

Чтобы разобраться, как решать судоку сложные, необходимо вооружиться несколькими простыми методами.

Метод «Открытые пары»

Чтобы очистить поле дальше, необходимо найти открытые пары, которые позволяют исключить имеющиеся в них цифры из других ячеек в блоке и строках. В примере такими парочками являются 4 и 9 из третьей строки. Они наглядно показывают, как разгадывать сложные судоку. Их комбинация говорит о том, что в данных клетках могут быть проставлены исключительно 4 или 9. Этот вывод делается на основании правил судоку.

Из выделенных зеленым ячеек можно удалить значения синих и тем самым сократить количество вариантов. При этом располагающаяся в первой строке комбинация 1249 называется по аналогии «открытой четверкой». Также можно встретить «открытые тройки». Такие действия влекут за собой появление других открытых пар, например 1 и 2 в верхней строке, которые также дают возможность сузить круг комбинаций. Параллельно проставляем в обведенной ячейке первого квадрата 7, так как пятерка в данной строке в любом случае будет располагаться в нижнем блоке.

Метод «Скрытые пары/тройки/четверки»

Данный метод является противоположным к открытым комбинациям. Его суть заключается в том, что необходимо найти ячейки, в которых повторяются цифры в рамках квадрата/строки, не встречающиеся в других клеточках. Как это поможет разгадывать судоку? Прием позволяет вычеркнуть остальные цифры, так как они служат фоном и не могут быть проставлены в выбранные клетки. Данная стратегия имеет несколько других названий, например «Ячейка не резиновая», «Тайное становится явным». Сами имена объясняют суть метода и соответствие правилу, говорящему о возможности проставить единственную цифру.

Примером могут служить окрашенные в голубой цвет клетки. Цифры 4 и 7 встречаются исключительно в этих ячейках, поэтому остальные можно смело удалить.

Подобно действует система сопряжения, когда можно исключить из ячеек блока/строки/столбца значения, несколько раз встречающееся в соседнем или сопряженном.

Перекрестное исключение

Принцип того, как разгадывать судоку, заключается в умении анализировать и сопоставлять. Еще одним способом исключить варианты является наличие какой-либо цифры в двух столбцах или строчках, которые пересекаются между собой. В нашем примере подобной ситуации не встретилось, поэтому рассмотрим другой. На картинке видно, что «двойка» встречается во втором и третьем среднем блоке единожды, при комбинации чем связаны, и взаимоисключают друг друга. Исходя из этих данных, цифру 2 можно удалить из других ячеек в указанных столбцах.

Также можно применять для трех и четырех строк. Сложность метода заключается в трудностях визуализации и выявления связей.

Метод «Сокращение»

В результате каждого действия количество вариантов в ячейках сокращается и решение сводится к методу «Одиночка». Этот процесс можно назвать сокращением и выделить в отдельный метод, так как он предполагает тщательный анализ всех строк, столбцов и малых квадратов с последовательным исключением вариантов. В итоге мы приходим к единственному решению.

Цветовой метод

Данная стратегия мало отличается от описанной, и заключается в цветовой индикации ячеек или цифр. Способ помогает визуализировать весь ход решения, однако, подходит не всем. Некоторых расцветка сбивает и мешает сосредоточиться. Чтобы грамотно использовать гамму, необходимо выбрать два-три цвета и окрашивать в них одинаковые варианты в разных блоках/линиях, а также спорные ячейки.

Чтобы разобраться, как решать судоку, лучше вооружиться ручкой и бумагой. Такой подход позволит натренировать голову, в отличие от использования электронных алгоритмов с наличием подсказок. Команда BrainApps рассмотрела несколько наиболее популярных, понятных и действенных методик, однако, существует множество других алгоритмов. Например, метод «Проб и ошибок», когда выбирается пробный вариант из двух или трех возможных и проверяется вся цепочка. Недостатком данной методики является необходимость использовать компьютер, так как на листке бумаги к исходному варианту вернуться не так просто.

Используйте цифры от 1 до 9

Судоку играется на игровом поле, состоящем из 9 на 9 клеток, всего 81 клетка. Внутри игрового поля находятся 9 "квадратов" (состоящих из 3 x 3 клеток). Каждая горизонтальная строка, вертикальный столбец и квадрат (9 клеток каждый) должны заполняться цифрами 1-9, не повторяя никаких чисел в строке, столбце или квадрате. Это звучит сложно? Как видно из изображения ниже, каждое игровое поле Судоку имеет несколько клеток, которые уже заполнены. Чем больше клеточек изначально заполнено, тем легче игра. Чем меньше клеток изначально заполнено, тем труднее игра.

Не повторяйте никакие числа

Как вы можете видеть, в верхнем левом квадрате (обведен синим) уже заполнены 7 из 9 клеток. Единственные числа, которые отсутствуют в этом квадрате, это числа 5 и 6. Видя, какие числа отсутствуют в каждом квадрате, строке или столбце, мы можем использовать процесс исключения и дедуктивное мышление, чтобы решить, какие числа должны находиться в каждой клетке.

Например, в верхнем левом квадрате мы знаем, что для завершения квадрата нужно добавить числа 5 и 6, но глядя на соседние строки и квадраты мы пока не можем четко определить, какое число добавить в какую клетку. Это означает, что теперь мы должны пока пропустить верхний левый квадрат и вместо этого попытаться заполнить пробелы в некоторых других местах игрового поля.

Не нужно гадать

Судоку – это логическая игра, поэтому не нужно гадать. Если вы не знаете, какое число поставить в определенную клетку, продолжайте сканировать другие области игрового поля, пока не увидите возможность вставить нужное число. Но не пытайтесь "форсировать" что-либо - Судоку вознаграждает за терпение, понимание и решение различных комбинаций, а не за слепое везение или угадывание.

Используйте метод исключения

Что мы делаем, когда используем "метод исключения" в игре Судоку? Вот пример. В этой сетке Судоку (показано ниже) в левом вертикальном столбце (обведен синим) отсутствуют только нескольких чисел: 1, 5 и 6.

Один из способов выяснить, какие числа можно вставить в каждую клетку - это использовать "метод исключения", проверяя, какие другие числа уже имеются в каждом квадрате, поскольку не допускается дублирование чисел 1-9 в каждом квадрате, строке или столбце.


В этом случае мы можем быстро заметить, что в верхнем левом и центральном левом квадратах уже есть число 1 (числа 1 обведены красным). Это означает, что в крайнем левом столбце есть только одно место, в которое можно вставить число 1 (обведено зеленым). Вот как метод исключения работает в Судоку - вы узнаете, какие клетки свободны, какие числа отсутствуют, а затем исключаете числа, которые уже присутствуют в квадрате, столбцах и рядах. Соответственно заполняете пустые клетки отсутствующими числами.

Правила Судоку относительно несложные - но игра необычайно разнообразна, с миллионами возможных комбинаций чисел и широким диапазоном уровней сложности. Но все это основано на простых принципах использования чисел 1-9, заполнении пробелов на основе дедуктивного мышления и никогда не повторяющихся чисел в каждом квадрате, строке или столбце.

Похожие публикации