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

Итак, сегодня я научу вас решать судоку .

Для наглядности возьмем конкретный пример и рассмотрим основные правила:

Правила решения судоку:

Желтым я выделил строку и столбец. Первое правило в каждой строке и каждом столбце могут быть цифры от 1 до 9, причем они не могут повторяться. Короче говоря – 9 клеток, 9 цифр – поэтому в 1-м и том же столбце не может быть 2-х пятерок, восьмерок и т.д. Аналогично для строк.

Теперь я выделил квадраты – это второе правило . В каждом квадрате могут быть цифры от 1-го до 9 причем они не повторяются. (Так же как и в строках и столбцах). Квадраты выделены жирными линиями.

Отсюда имеем общее правило для решения судоку : ни в строках , ни в столбцах ни в квадратах цифры не должны повторяться.

Ну что ж, давайте теперь попробуем его решить:

Я выделил единицы зеленым и показал направление, куда мы смотрим. А именно – нас интересует последний верхний квадрат. Можно заметить, что во 2-м и 3-м ряду этого квадрата не могут быть единицы иначе будет повторение. Значит – единица вверху:

Легко находится и двойка:

Теперь воспользуемся найденной только что двойкой:

Надеюсь, алгоритм поиска стал понятен, поэтому с этого момента буду рисовать быстрее.

Смотрим на 1-й квадрат 3-й строки (внизу):

Т.к. у нас там осталось 2 свободных клетки, то в каждой из них может быть одна из двух цифр: (1 или 6):

Это значит, что в столбце, который я выделил не может больше быть ни 1 ни 6 – значит в верхним квадрате ставим 6.

За неимением времени на этом и остановлюсь. Очень надеюсь, что логику вы уловили. Кстати, я взял не самый простой пример, в котором скорее всего не будут сразу видны все решения однозначно, а поэтому лучше пользоваться карандашом. Мы пока не знаем насчет 1 и 6 в нижнем квадрате, поэтому их рисуем карандашом – аналогично в верхнем квадрате будут карандашом нарисованы 3 и 4.

Если ещё немного порассуждать, используя правила - избавимся от вопроса где 3, а где 4:

Да, кстати, если вам какой-то момент показался непонятным – напишите, я поясню подробнее. Удачи с разгадыванием судоку.


СУДОКУ - это популярная игра - пазл, которая представляет собой головоломку с цифрами, одолеть которую можно только строя логические умозаключения. В названии Судоку в переводе с японского «су»— «цифра», а doku «доку»— «стоящая отдельно». Следовательно, «СУДОКУ» в приблизительном переводе означает «одиночная цифра».

Название "Sudoku" дало этой головоломке японское издательство Nicoli в 1984 году. Sudoku - это сокращение от "Suuji wa dokushin ni kagiru", что в переводе с японского означает "число должно быть единственным". Издательство Nikoli не только придумало звучное имя, но и впервые ввело симметрию в заданиях для своих головоломок. Название головоломке дал руководитель Nicoli - Кaji Maki. Весь мир принял это новое японское название, но в самой Японии головоломку называют "Nanpure". Nicoli зарегистрировало в своей стране слово "Sudoku" как торговую марку.

История происхождения СУДОКУ

Родиной шахмат считается Индия, родиной футбола - Англия. У игры судоку (sudoku), быстро распространившейся по всему миру, родины как таковой нет. Прообразом судоку можно считать головоломку “Магический квадрат”, которая появилась Китае 2000 лет назад.

История судоку как игры восходит к имени знаменитого швейцарского математика, механика и физика Леонарда Эйлера (1707 - 1783).

В бумагах его архива, датированных 17 октября 1776 года, содержатся записи о том, как образовать магический квадрат с определенным числом ячеек, особенно 9, 16, 25 и 36. В другом документе, озаглавленном «Научное исследование новых разновидностей магического квадрата» Эйлер помещал в клетки латинские буквы (Латинский квадрат), позже он заполнил клетки греческими буквами и называл квадрат греко-латинским. Исследуя различные варианты магического квадрата, Эйлер обратил внимание на проблему комбинации символов таким образом, чтобы не один из них не повторялся ни в одной строке и ни в одном столбце.

В современном виде головоломки судоку впервые были опубликованы в 1979 году в журнале Word Games magazine. Автором головоломки был Гарвард Гарис из Индианы. Головоломку «Number Place» (в переводе на русский - "место числа") - это можно считать одним из первых выпусков современных судоку. В ней были добавлены блоки размером 3х3 клетки, что было важным усовершенствованием, так как позволило сделать головоломку более интересной. Он использовал принцип латинского квадрата Эйлера, применил его в матрице размерностью 9х9 и добавил дополнительные ограничения, цифры не должны повторяться и во внутренних квадратах 3х3.

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

В Японии эта головоломка была опубликована компанией Nicoly Inc., крупным издателем сборников различных головоломок, в газете Monthly Nicolist в апреле 1984 года под заголовком «Число может использоваться только один раз». 12 ноября 2004 года газета The Times впервые на своих страницах опубликовала головоломку судоку. Эта публикация стала сенсацией, головоломка быстро распространилась по всей Британии, Австралии, Новой Зеландии; приобрела популярность и в США.

Варианты судоку

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

Судоку различаются по уровню сложности в зависимости от размера квадрата:

  • 1. Для маленьких любителей головоломок делаются судоку с полями 2х2, 6х6 клетки.
  • 2. Для профессионалов существуют судоку 15х15 и 16х16 клеток

Судоку бывают разных уровней:

  • легкий
  • средний
  • сложный
  • очень сложный
  • суперсложный

Правила решения

У головоломок судоку всего одно правило. Необходимо заполнить свободные клетки так, чтобы в каждой строке, в каждом столбце и в каждом малом квадрате 3Х3 каждая цифра от 1 до 9 встречалась бы только 1 раз. Часть клеток в судоку уже заполнена цифрами, и вам остается заполнить остальные. Чем больше цифр стоит изначально, тем проще решить головоломку. Кстати, правильно составленная судоку имеет только одно решение.

Решение судоку

Стратегия решения судоку включает в себя три этапа:

  • изучение расположения цифр в головоломке
  • предварительная расстановка цифр
  • анализ

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

Математическая основа. Количество возможных комбинаций в судоку 9x9 составляет по расчётам Бертхама Фельгенхауэра 6 670 903 752 021 072 936 960.

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

Нам выпадает условие номер 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.

Используйте цифры от 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, заполнении пробелов на основе дедуктивного мышления и никогда не повторяющихся чисел в каждом квадрате, строке или столбце.

ВКонтакте Facebook Одноклассники

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

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

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

Исследователи комплексных сетей Золтан Торожкай и Мария Эркси-Раваз из Университета Нотр-Дама также смогли объяснить, почему некоторые загадки судоку более сложные, чем другие. Единственный недостаток в том, что для того, чтобы понять, что они предлагают, нужна степень доктора математики.


Вы можете решить эту головоломку? Она создана математиком Арто Инкалой, и, как утверждают, это самая сложная судоку в мире. Фото с сайта nature.com

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

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


Исследователи использовали «детерминированный аналоговый решатель», чтобы заполнить эту судоку. Фото с сайта nature.com

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

Они создали шкалу от 1 до 4, где 1 - «легко», 2 - «средняя степень сложности», 3 - «сложно», 4 - «очень сложно». Для решения головоломки с рейтингом 2 требуется в среднем в 10 раз больше времени, чем для задачки с рейтингом 1. Согласно этой системе, самая сложная загадка из известных до сих пор имеет рейтинг 3.6; более сложные задачи судоку пока неизвестны.


Теория начинается с картографии вероятностей для каждого отдельного квадрата. Фото с сайта nature.com

«Я не интересовался судоку, пока мы не начали работать над более общим классом выполнимости Булевых проблем, - говорит Торожкай. - Так как судоку - часть этого класса, латинский квадрат 9-го порядка оказался для нас хорошим полем для испытаний, так я с ними и познакомился. Меня и многих исследователей, изучающих такие проблемы, захватывает вопрос, как далеко мы, люди, способны зайти в решении судоку, детерминировано, без перебора, который является выбором наугад, и, если догадка не верна, нужно вернуться на шаг или на несколько шагов назад и начать сначала. Наша аналоговая модель решения детерминирована: в динамике нет никакого случайного выбора или возвращения».


Теория хаоса: степень сложности загадок показывается здесь как хаотическая динамика. Фото с сайта nature.com

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

Опыт исследования также сделал Торожкая большим любителем судоку.

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

Методология Торожкая и Эркси-Раваз была впервые опубликована в журнале Nature Physics, а затем - в журнале Nature Scientific Reports.