Решение кроссвордов судоку. Способы решения классического судоку

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

Вот какие сведения я нашел об этом сверхсложном варианте в интернете:

Профессор Хельсинского университета Арто Инкала (Arto Inkala) утверждает (2011г.), что он создал самый сложный в мире кроссворд судоку. Эту сложнейшую головоломку он создавал три месяца.

По его словам, созданный им кроссворд невозможно решить с помощью одной лишь только логики. Арто Инкала утверждает, что даже самые опытные игроки на решение потратят не меньше нескольких дней. Изобретение профессора получило название AI Escargot (AI – инициалы ученого, Escargot – от англ. «улитка»).

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

Ну, “последовательности переборов” – это все же отдает машинным вариантом решения проблем, а те, кто решал задачу Арто Инкала посредством собственных мозгов, говорят об этом по-разному. Кто-то решал ее пару месяцев, кто-то объявил о том, что на это потребовалось лишь 15 минут. Ну что ж, чемпион мира по шахматам возможно и справился бы с задачей за такое время, а экстрасенс, если таковые обитают на нашей плане, возможно и еще быстрее. А еще мог быстро решить задачу тот, кто случайно с первого разу подобрал несколько удачных цифр для заполнения пустых ячеек. Скажем, одному из тысячи решателей задачи могло бы подобным образом и повезти.

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

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

После обычной почти рутинной обработки таблиц ситуации немного упростилась:

Эту ситуацию я и начал изучать. Ну а поскольку я уже подзабыл, как именно я решал эту задачу несколькими днями раньше, то начинаю осмысливать ее по новой. Прежде всего, я обратил внимание на два числа 67 в ячейках четвертого блока и совместил их с механизмом вращения (перемещения) ячеек, о котором рассказывал в предыдущей статье. Перебрав все варианты вращения трех первых столбцов таблицы, я пришел к выводу, что цифры 6 и 7 не могут находиться в одном столбце и не могут вращаться асинхронно, они, в процессе вращения, могут лишь следовать одна за другой. Также, если присмотреться, семерка с четверкой как бы передвигаются синхронно по всем трем столбцам. Поэтому я делаю правдоподобное предположение, что в нижней левой ячейке блока 4 должна разместиться цифра 7, а в правой верхней – соответственно 6.

Но этот результат я пока принимаю лишь как возможный ориентир в опробовании других вариантов. А основное внимание я обращаю на число 59 в ячейке 4-го блока. Здесь может быть либо цифра 5, либо 9. Девятка обещает уничтожить очень много лишних цифр, т.е. упростить дальнейший ход решения задачи, и я начинаю с этого варианта. Но довольно быстро захожу в “тупик”, т.е. далее надо снова делать какой-то выбор и как знать, как долго мой выбор будет проверяться. Я предполагаю, что если бы девятка действительно была когда-то правильным выбором, то Инкала вряд ли бы оставил такой очевидный вариант на виду, хотя механизм его программы мог и допустить подобный ляпсус. В общем, так или иначе, я решил сначала досконально проверить вариант с цифрой 5 в ячейке с числом 59.

Но уже позже, когда решил задачу, я, так сказать для очистки совести, все же вернулся к варианту с цифрой 9, чтобы определить как долго пришлось бы его проверять. Проверять пришлось не очень долго. Когда у меня в правой верхней ячейке блока 4 оказалась цифра 6, как и полагалось по предварительно выбранному ориентиру, то в правой средней ячейке возникло число 19 (убралась 6 из 169). Я выбрал для дальнейшего опробование цифру 9 в этой ячейке и быстро пришел к противоречивому результату, т.е. выбор девятки не верен. Тогда выбираю цифру 1 и снова проверяю, что из этого выйдет.

На каком-то шаге прихожу к ситуации:

где снова приходится делать выбор – цифру 2 или 8 в верхней средней ячейке блока 4. Проверяю оба варианта (2 и 8) и в обоих случаях заканчиваю противоречивым (не отвечающим условию судоку) результатом. Так что мог бы проверить вариант с цифрой 9 в средней нижней ячейке блока 4 с самого начала и много времени на это не потребовалось бы. Но я все же, как уже говорил, остановился на цифре 5 в упомянутой ячейке. Это привело меня к следующему результату:

Расположение цифр 4 и 7 в первых трех столбцах (колонках) свидетельствует о том, что они вращаются синхронно, что собственно и предполагалось при выборе цифры 7 для нижней левой ячейки 4-го блока. При этом двойка или девятка, будь любая из них требуемой цифрой в средней левой ячейке этого блока, должны соответственно двигаться асинхронно паре 4 и 7. Предпочтение в данном случае я отдал цифре 2, так как она “обещала” устранить много лишних цифр из чисел ячеек и, соответственно, быструю проверку допустимости данного варианта. А девятка быстро заводила в тупик – требовала подбора новых цифр. Таким образом, в левой средней ячейке блока с числом 29 я проставил не мой взгляд более предпочтительную из цифр – 2. Результат вышел следующим:

Далее мне пришлось еще раз сделать так сказать полупроизвольный выбор: выбрал двойку в ячейке с числом 26 в девятом блоке. Для этого достаточно было заметить, что 5 и 2 в трех нижних строках вращаются синхронно, так как 5 не вращалась синхронно ни с 1, ни с 6. Правда, синхронно могли вращаться еще 2 и 1, но из каких-то соображений – точно не помню – я выбрал 2 вместо числа 26, возможно потому, что этот вариант, по моей оценке, быстро проверялся. Впрочем, уже оставалось немного вариантов, и можно было достаточно быстро проверить любой из них. Можно было также вместо варианта с двойкой предположить, что цифры 7 и 8 вращаются синхронно в последних трех столбцах (колонках), а отсюда следовало, что в левой верхней ячейке 9-го блока могла быть только цифра 8, что также приводит к быстрой развязке задачи.

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

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

А в остальном – желаю вам успехов в решении всех проблем.

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

Начните решение с единицы.

1. Сначала “осмотритесь” на игровом поле, отыскав все ячейки с цифрой “1”.

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

3. Если единицы в блоке еще нет, попробуйте найти все ячейки внутри этого блока, в которых могла бы стоять единица. Не забывайте о правиле: каждая цифра может стоять в каждой строке, в каждом столбце и каждом блоке только один раз. Исключите из рассмотрения все ячейки блока, в которых цифра “1” не может находиться, потому что столбец или строка уже “заняты”. Вполне вероятно, что найдется такой блок, в котором останется всего одна клетка, в которой может находиться единица. Впишите ее.

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

После того как вы “пройдете” все блоки с цифрой “1”, повторите поиск с другим числом. Например с двойкой. Потом с тройкой и так далее. До тех пор, пока вы не проверите все цифры от 1 до 9. И вы увидите, что заполнили уже много клеток. После чего советуем повторить всю “процедуру” еще раз с самого начала – снова от 1 до 9. Во второй раз дело пойдет легче, потому что многие клетки уже заполнены. И там, где вы сомневались, можно уверенно вписать цифру.

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

Для удобства объяснения будем использовать нумерацию строк, столбцов и блоков 3х3 от 1 до 9. Порядок нумерации: слева – направо и сверху – вниз.

1. Серый блок, строка или столбец – это “зона”, которую анализируем в поисках решения;

2. Выделенная “жирная” цифра(синего цвета) – искомая цифра, найденная в процессе анализа;

3. Линии показывают, что по этому направлению не может быть поставлена цифра, от которой эта линия начинается.

Находим цифру “1” во 2-м блоке. Линии, идущие от единиц 5-го и 8-го блоков, перечеркивают остальные пустые клетки.

Находим цифру “1” в 4-м блоке. Для этого снала определим, где в 6-м блоке могут быть единицы, проводя линии от единиц 5-го и 9-го блоков – две единички в верхнем ряду. Уже от них проводим линию в сторону 4-го блока и линию от единицы 5-го блока.

Поиск возможных двоек не увенчался успехом, но можно найти тройку в 9-м блоке, проведя линии от троек в 3-м и 6-м блоках. Не нашлись варианты и для цифр “4”, “5”, “6”, “7”. А вот цифра “8” нашлась в 8-м квадрате: линии от восьмерок 2-го, 5-го и 7-го блоков. Девятка тоже не нашлась.

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

Первая двойка нашлась в блоке 4, после чего там же определилась и первая пятерка. Цифры “3”, “4”, “6”, “7” найдены не были.

Цифра “8” блока 1 определяется по линиям от восьмерок из блоков 4 и 7. Затем найдем девятку 9-го ряда: так как ее не может быть в блоках 7 и 8 (см. линии от соответствующих девяток), то она стоит в блоке 9.

Цифра “9” в 1-й строке: ее не может быть в блоке 2, значит она в блоке 3. В оставшуюся клетку строки вписываем “5”. Две цифры “9” нашлись в блоках 5 и 6. Начинаем опять с цифры “1”.

Первой нашлась четвертка 6-го блока. Затем четверка 5-го столбца – она не может быть в 4-й и в 7-й строке. Тройки не может быть в 7-й строке, значит она в 4-й. Тогда в оставшейся ячейке шестерка.

В следующем шаге очередь не обязательна: сначала находим восьмерку, а затем единицу в блоке 6, или наоборот.

Продолжаем расставлять восьмерки: сначала находим “8” в блоке 9, а от нее ведем линию, определяя восьмерку в блоке 3.

Следующими нашлись цифры “1” и “6” в блоке 3, очередность нахождения не принципиальна.

Затем определимся с цифрой “7” в 9-м столбце: ее не может быть в блоке 6, тогда она во 2-й строке. От пятерки в блоке 1 проводим линию – находим место цифре “5” в 3-м блоке. В свободную клетку вписываем последнюю цифру – “2”.

Во втором ряду находим цифру “2”, затем “4” и, наконец “9”.

Затем находим цифру “4” в блоке 8. В оставшейся клетке – “7”. Ведем от нее линию вверх до блока 5 – новая семерка. В незаполненной клетке 9-й строки – “7”.

Найдем последовательно цифры “5”, “2”, “6” в блоке 5 и цифры “7”, “3” в 6-м ряду. Затем получим “5” и “6” в 6-м блоке. Последняя цифра “6” в 4-м блоке.

Следующие “7” и “3” в 1-м блоке; цифры “7” и “2” в 7-м столбце и “5” в блоке 9. Анализируем 7-ю строку, 2-й столбец и расставляем сначала “9”, затем “3” и “2”. Последний штрих – “4” и “6”.

Решение закончено.

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

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

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

Правила игры в Судоку не сложные, они встречаются на страницах газет или их достаточно легко, можно найти в Internet.

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

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

Для наглядности и лучшего понимания процесса решения загадки, рассмотрим один из простых вариантов, первого уровня сложности Sudoku-4tune, 6** серии.

И так, дано игровое поле, состоящее из 81-ой ячейки, которые в свою очередь составляют: 9-ть строк, 9-ть столбцов и 9-ть мини-квадратов размером 3х3 ячейки. (Рис.1.)

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

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

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

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

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

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

Следующий ход. Столбец номер 5 (слева на право) имеет всего две свободные ячейки. После не долгих размышлений определяем недостающие цифры – 5 и 8.

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

В данном примере сложно сориентироваться только по строкам, или столбцам, но если обратить внимание на мини-квадраты то становится понятно. Вписать цифру 8 во вторую (с верху) ячейку рассматриваемого столбца нельзя, иначе во втором мине-квадрате будет две восьмерки. Аналогично и с цифрой 5 для второй ячейки (снизу) и второго нижнего мини-квадрата рис.4 (не правильное расположение).

Хотя и решение кажется правильным для столбца, девять цифр, в столбце, без повторения, оно противоречит основному правил. В мини-квадратах цифры также не должны повторяться.

Соответственно для правильного решения во вторую (сверху) ячейку необходимо вписать 5, а во вторую (снизу)-8. Данное решение полностью соответствует правилам. Верный вариант см. рис 5.

Дальнейшее решение, простой с виду, задачи, требует внимательного рассмотрения игрового поля и подключения логического мышления. Можно снова воспользоваться принципом минимального количества свободных ячеек и обратить внимание на третий и на седьмой столбец (слева на право). В них не заполненными остались по три ячейки. Посчитав недостающие цифры, определяем их значения – это 2,3 и 9 для третьего столбца и 1,3 и 6 для седьмого. Оставим пока заполнение третьего столбца, поскольку с ним нет определенной ясности в отличие от седьмого. В седьмом столбце сразу можно определить расположение цифры 6 – это вторая снизу свободная ячейка. Из чего сделан такой вывод?

При рассмотрении мини-квадрат, в состав которого, входит вторая ячейка, становится понятно, что в нем уже присутствуют цифры 1и3. Из необходимой нам цифровой комбинации 1,3 и 6 другой альтернативы нет. Заполнение оставшихся двух свободных ячеек седьмого столбца, так же не вызывает затруднений. Поскольку третья строка, в своем составе уже имеет заполненную 1, в третью с верху ячейку седьмого столбца вписывается 3, а в единственную оставшуюся свободную вторую ячейку 1. Пример см. рис 6.

Оставим пока третий столбец для более четкого понимания момента. Хотя если есть желание, можно сделать для себя пометку, и внести предполагаемый вариант необходимых для установки цифр в эти ячейки, которые можно будет исправить в случае прояснения ситуации. Электронные игры Sudoku-4tune, 6** серии позволяют вписывать более одной цифры в ячейки, для памятки.

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

Проанализировав ситуацию можно заметить (пример заполнения мини-квадрата), что для полного его заполнения не достает следующих цифр 2,5 и 8. Рассмотрев среднюю, свободную ячейку можно заметить, что из необходимых цифр сюда подходит только 5. Поскольку 2 присутствует в верхней ячейке столбца, а 8 в строке в состав, которой, помимо мини-квадрата входит данная ячейка. Соответственно в средней ячейке последнего мини-квадрата вписываем цифру 2, (она не входит ни в строку, ни в столбец), а в верхнюю ячейку данного квадрата вписываем 8. Таким образом, у нас полностью заполнен нижний правый (9-й) мини-квадрат цифрами от 1 до 9, при этом цифры не повторяются и в столбцах ни в строках, рис.7.

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

В электронных играх Sudoku-4tune, 6**серии предусмотрена возможность использования подсказки. Четыре раза за игру Вы можете задействовать эту функцию и компьютер сам, установит правильную цифру в выбранной Вами ячейке. В моделях 8** серии такая функция отсутствует, и использование второго метода становится наиболее актуальным.

Рассмотрим второй метод в используемом нами примере.

Для наглядности возьмем четвертый столбец. Незаполненное количество ячеек в нем достаточно велико, шесть. Просчитав недостающие цифры, определяем их – это 1,4,6,7,8 и 9. Сократить количество вариантов, можно взяв за основу средний мини- квадрат, в котором имеется достаточно большое количество определенных цифр и всего лишь две свободные ячейки данного столбца. Сопоставив их с необходимыми нам цифрами видно, что 1,6,и 4 можно исключить. Их не должно быть в данном мини-квадрате во избежание повторений. Остается 7,8 и 9. Обратим внимание, что в строке (четвертая с верху), в состав которой входит нужная нам ячейка уже есть цифры 7 и 8 из, тех трех оставшихся которые нам нужны. Таким образом, остается единственный вариант для данной ячейки -это цифра 9, рис.8 Сомнений в правильности данного варианта решения не вызывает и тот факт, что все рассмотренные и исключенные нами цифры, были изначально даны в задании. То есть, они не подлежат какому либо изменению или переносу, подтверждая однозначность выбранной нами цифры для установки в данную конкретную ячейку.

Используя два метода одновременно в зависимости от ситуации, анализируя и логически размышляя, Вы заполните все свободные ячейки и придете к правильному решению любой головоломки Sudoku, и данной загадки в частности. Попробуйте самостоятельно завершить решение нашего примера рис.9 и сравнить его с окончательным ответом приведен на рис.10.

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

Поле судоку представляет собой таблицу 9х9 клеток. В каждую клетку заносится цифра от 1 до 9. Цель игры: расположить цифры таким образом, чтобы в каждой строке, в каждом столбце и в каждом блоке 3х3 не было повторений. Другими словами, в каждом столбце, строке и блоке должны быть все цифры от 1 до 9.

Для решения задачи в пустые клетки можно записывать кандидатов. Например, рассмотрим клетку 2-го столбца 4-ой строки: в столбце, в котором она находится, уже имеются цифры 7 и 8, в строке – цифры 1, 6, 9 и 4, в блоке – 1, 2, 8 и 9. Следовательно, из кандидатов в данной ячейке вычеркиваем 1, 2, 4, 6, 7, 8, 9, и у нас остается только два возможных кандидата – 3 и 5.

Аналогично, рассматриваем возможных кандидатов для других ячеек и получаем следующую таблицу:

С кандидатами решать интереснее и можно применять различные логические методы. Далее мы рассмотрим некоторые из них.

Одиночки

Метод заключается в отыскании в таблице одиночек, т.е. ячеек, в которых возможна только одна цифра и никакая другая. Записываем эту цифру в данную ячейку и исключаем ее из других клеток этой строки, столбца и блока. Например: в данной таблице имеются три «одиночки» (они выделены желтым цветом).

Скрытые одиночки

Если в ячейке стоит несколько кандидатов, но один из них не встречается больше ни в одной другой ячейке данной строки (столбца или блока), то такой кандидат называется «скрытой одиночкой». В следующем примере кандидат «4» в зеленом блоке найден только в центральной ячейке. Значит, в этой ячейке обязательно будет «4». Заносим «4» в данную ячейку и вычеркиваем из других ячеек 2-го столбца и 5-ой строки. Аналогично, в желтом столбце кандидат «2» встречается один раз, следовательно, в данную ячейку заносим «2» и исключаем «2» из ячеек 7-ой строки и соответствующего блока.

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

Запертый кандидат

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

В примере ниже, центральный блок содержит кандидата «2» только в центральном столбце (желтые ячейки). Значит, одна из этих двух ячеек точно должна быть «2», и никакие другие ячейки в том ряду вне этого блока не могут быть «2». Поэтому «2» может быть исключен как кандидат из других ячеек этого столбца (ячейки зеленого цвета).

Открытые пары

Если две ячейки в группе (строке, столбце, блоке) содержат идентичную пару кандидатов и ничего более, то никакие другие ячейки этой группы не могут иметь значения этой пары. Эти 2 кандидата могут быть исключены из других ячеек в группе. В примере ниже, кандидаты «1» и «5» в колонках восемь и девять формируют Открытую Пару в пределах блока (желтые ячейки). Поэтому, так как одна из этих ячеек должна быть «1», а другая должны быть «5», кандидаты «1» и «5» исключаем из всех других ячеек этого блока (зеленые ячейки).

Тоже самое можно сформулировать для 3 и 4-х кандидатов, только участвует уже 3 и 4 ячейки, соответственно. Открытые тройки: из ячеек зеленого цвета исключаем значения ячеек желтого цвета.

Открытые четверки: из ячеек зеленого цвета исключаем значения ячеек желтого цвета.

Скрытые пары

Если в двух ячейках в группе (строке, столбце, блоке) содержат кандидаты, среди которых идентичная пара, не встречающаяся ни в одной другой ячейке данного блока, то никакие другие ячейки этой группы не могут иметь значения этой пары. Следовательно, все другие кандидаты этих двух ячеек могут быть исключены. В примере ниже, кандидаты «7» и «5» в центральной колонке находятся только в ячейках желтого цвета, значит, всех остальных кандидатов из этих ячеек можно исключить.

Аналогично, можно искать скрытые тройки и четверки.

x-wing

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

В 4-ой и 5-ой строках цифра «2» может быть только в двух ячейка желтого цвета, при чем эти ячейки находятся в одинаковых столбцах. Следовательно, цифра «2» может быть записана только двумя способами: 1) если «2» записать в 5-ый столбец 4-ой строки, то из желтых ячеек «2» надо исключит и тогда в 5-ой строке положение «2» определяется однозначно 7-ым столбцом.

2) если «2» записать в 7-ой столбец 4-ой строки, то из желтых ячеек «2» надо исключит и тогда в 5-ой строке положение «2» определяется однозначно 5-ым столбцом.

Следовательно, 5-ый и 7-ой столбец обязательно будут иметь цифру «2» либо в 4-ой строке, либо в 5-ой. Тогда из других ячеек данных столбцов цифру «2» можно исключить (зеленые клетки).

“Рыба Меч” (Swordfish)

Этот метод является вариацией метода .

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

  • Ищем строчки, в которых кандидат встречается не более трех раз, но при этом он принадлежит ровно трем колонкам.
  • Исключаем кандидата из этих трех колонок из других строк.

Эта же логика применима и в случае трех колонок, где кандидат ограничивается тремя строками.

Рассмотрим пример. В трех строчках (3, 5 и 7-ая) кандидат «5» встречается не более трех раз (ячейки выделены желтым цветом). При этом они принадлежат только трем столбцам: 3, 4 и 7-ому. Согласно методу «Рыба меч» из других ячеек этих столбцов кандидата «5» можно исключить (зеленые ячейки).

В примере, приведенном ниже, так же применяется метод «Рыба меч», но уже для случая трех колонок. Исключаем кандидата «1» из ячеек зеленого цвета.

«X-wing» и «Рыба меч» можно обобщить на случай четырех строк и четырех столбцов. Данный метод будет называться «Медуза».

Цвета

Бывают ситуации, когда кандидат встречается только два раза в группе (в строке, столбце или блоке). Тогда искомая цифра обязательно будет в одном из них. Стратегия метода «Цвета» заключается в том, чтобы просматривать эту взаимосвязь с использованием двух цветов, например, желтого и зеленого. При этом решение может быть в клеточках только какого-то одного цвета.

Выделяем все взаимосвязанные цепочки и принимаем решение:

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

В следующем примере применим метод «Цвета» для ячеек с кандидатом «9». Начинаем раскрашивать с ячейки в левом верхнем блоке (2 строка, 2 столбец), закрасим ее в желтый цвет. В своем блоке она имеет только одного соседа с «9», закрасим его в зеленый цвет. Также у нее только один сосед в столбце, закрашиваем и его в зеленый цвет.

Аналогичным образом работаем с остальными ячейками, содержащими цифру «9». Получаем:

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

Еще один пример на метод «Цвета». Пометим парные ячейки для кандидата «6».

Клетка с «6» в верхнем центральном блоке (выделим сиреневым цветом) имеет двух разноцветных кандидатов:

«6» обязательно будет или в желтой или в зеленой клетке, следовательно, из этой сиреневой клетки «6» можно исключить.

В этой статье разберём подробно каким образом решать сложные судоку на примере диагонального судоку.

Нам выпадает условие номер 437, которое показано на рисунке 1. И сразу бросается в глаза первый квадрат, он самый насыщенный на открытые цифры. Не хватает цифр 1, 3,4,9. Но так как горизонталь а тройку уже содержит, то цифра три ставится на с1. Остальные мы точно поставить не можем. Потому рассмотрим что у нас ещё есть. К примеру вертикаль 4 и здесь цифра четыре может стоять только на b4, из за наличия четвёрки в пятом квадрате и на горизонталь с. Остальные цифры мы пока ставить не будем.

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

А что у нас на горизонтали b? Тут не хватает тройки и стоять она может только на b8. (Во втором квадрате она уже есть и на вертикали 9). И если внимательно рассмотреть дальше горизонталь b, то мы обнаружим, что у нас есть скрытая одиночка – цифра 9 на клетке b9. Потому как остальные кандидаты (это 1 и 5) на этой клетке стоять не могут!

Что мы можем дальше сделать? Если рассмотреть квадрат пять. Тут цифры 3 и 5 могут быть либо на d5 либо на e6. Значит для остальных цифр эти клетки не рассматриваем.Исходя из этого для единички остаётся только одно место – клетка d6.

Результат наших действий на рисунке 2. Благодаря проведённому нами анализу ряд b проставляется полностью. Единица на b5, пятёрка на b6. Что даёт нам право расставить 3 и 5 в пятом квадрате!

Продолжим анализ пятого квадрата. В нём не хватает цифры 7, её же нет на главных диагоналях, а что самое интересное на вертикали 4. Благодаря этой самой вертикали мы можем точно сказать что цифра семь в пятом квадрате может стоять либо на f4 или e4. Так как горизонтали с и d семёрку уже содержат. А на е5 она не может стоять из за вертикали 4. Дальше обратимся к главным горизонталям. И тут семёрки сразу расставляются! На i9 и на f4.

Что у нас получилось можно увидеть на рисунке 3. Дальше продожим анализ главных диагоналей. Если рассмотреть идущую с клетки а1, то в ней не хватает двойки, которая ставится только на h8. Ещё в этой диагонали не хватает 1, 8 и 9 . Единичка может стоять только на а1, ставим быстренько её! А восьмёрка на d4 стоять не может, так как она есть на горизонтали d уже. Расставляем – d4 -9, e5 -8.

А вот теперь мы можем полностью заполнить пятый и первый квадраты! Что у нас получилось смотрим на рисунке 4.

Обратите внимание на вертикаль 3. Тут нужно расставить 1, 6, 7. Единица ставится только на f3, а исходя из этого расставляются остальные – e3 -7, h3-6. Дальше на очереди у нас вертикаль 9, так как она расставляется просто сказочно. d9-2, g9-6, h9-8.

А что если нам проверить на открытые одиночки?! К примеру, цифра три смело ставится на клетки d2 и h5. Хотя дальнейший анализ одиночек ничего не даёт. Тогда обратимся к оставшейся диагонали. У ннеё не хватает 6, 2, 4. Цифра шесть может быть только на c7. Остальное уже просто заполнить.

А почему у нас вертикаль 4 не проставлена до конца? Исправляем. с4 -8.

Результат наших изысканий на рисунке5. А теперь заполним горизонталь с. с8-1, с5-9, с6-2. И это всё исходя из наличия этих цифр в других вертикалях. Основываясь на горизонтали с легко заполнить горизонталь d. d1-6, d7 -4. Дальше совсем просто заполняется третий квадрат. А вот второй квадрат пока не заполнится, хотя так же только два кандидата – шестёрка и семёрка. Но по вертикалям пять и шесть они не встречаются и потому пока отложим их.

Проанализировав все вертикали и горизонтали мы приходим к выводу, что однозначно поставить нельзя ни одной цифры. Потому переходим к рассмотрению квадратов. Обратимся к шестому квадрату. Тут не хватает 5,6,8,9. Но цифры 6 и 8 мы точно можем поставить на клетки f7 и f8. Благодаря нашему анализу горизонталь f проставляется вся! f1 -9, f2 -5. И что мы тут видим – четвёртый квадрат заполняется весь! е1- 4, е2 -2.

Что у нас получилось можно посмотреть на рисунке 6. Теперь обратимся к квадрату девять. Здесь у нас появляется одна открытая одиночка – цифра один на i7. Благодаря чему мы можем поставить единичку в седьмом квадрате на g2. Восьмёрка на i2.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: