Как решать японский кроссворд
Японский кроссворд, он же нонограмма, гридлерс, ханзи или рисунок по числам, решается по одной строке: числа у каждой строки и столбца перечисляют по порядку блоки закрашенных клеток в этой строке, а между блоками есть хотя бы одна пустая клетка. Любое поле на этом сайте можно закончить так, без догадок. Схемы ниже — реальные строки с наших безлимитных полей в момент, когда применим каждый приём.
Начните с того, что уже решает пустая сетка
Ещё до первой закрашенной клетки в некоторых строках часть клеток видна сразу: длинное для своей строки число само определяет клетки. Просмотрите сначала все строки и столбцы в поиске таких. Каждая отмеченная клетка даёт опору пересекающимся строкам.
- решено этим шагом
Посчитайте строку: когда числа заполняют её целиком
Сложите блоки и добавьте по одной пустой клетке между каждой парой. Если сумма равна длине строки, блоки встают только одним способом, и вся строка решена, включая пропуски.
- решено этим шагом
Пересечение: сдвиньте блок влево, потом вправо
Сдвиньте блок как можно левее, затем как можно правее. Если он длиннее половины места, где может двигаться, два положения перекрываются, и перекрытые клетки закрашены при любом решении. Для одного блока длиной k в строке из n клеток верно ровно 2k − n клеток, когда 2k больше n.
С несколькими блоками то же самое: сдвиньте их все к одному краю, потом к другому и закрасьте клетки, которые один и тот же блок накрывает в обоих положениях.
- решено этим шагом
Прижмите блок к краю
Закрашенная клетка рядом с краем принадлежит первому блоку с этой стороны, если она ближе к краю, чем длина этого блока. Блок не может начаться за краем, поэтому он должен тянуться от этой клетки на всю свою длину.
- решено этим шагом
Отметьте клетки, до которых не достать ни одному блоку
Когда часть клеток известна, у блоков остаётся меньше места. Любая клетка, которую не может накрыть ни один блок ни при каком расположении, пуста: отметьте её крестиком. Крестики важны не меньше закрашенных клеток, ведь они режут пересекающиеся строки на короткие участки, где снова работает пересечение.
- решено этим шагом
Завершите строку: отметьте остальное крестиками
Когда в строке стоят все закрашенные клетки, которых требуют числа, каждая оставшаяся пустая клетка в ней пуста. Отметьте их сразу: эти крестики — те факты, которых ждут пересекающиеся строки.
- решено этим шагом
Рабочий порядок
Работайте проходами. Сначала все строки, которые решает пустая сетка. Затем переходите между строками и столбцами, перечитывая только те, где с прошлого раза прибавилась клетка. Когда ничего не двигается, ищите закрашенную клетку у края (прижать блок) и блоки, у которых стало меньше места (снова пересечение с учётом известных клеток). На наших полях эти шаги всегда доводят до конца: генератор отбрасывает любое поле, где нужна догадка или перебор вперёд.
Вопросы
- Нонограмма — это то же, что Picross или гридлерс?
- Правила одни и те же. Гридлерс, ханзи и рисунок по числам — другие названия этой головоломки. Picross — название, которое Nintendo даёт своим играм-нонограммам, а Pic-a-Pix — название от Conceptis; мы не связаны ни с одной из них.
- Может ли у нонограммы быть несколько решений?
- У случайной сетки может, а некоторые можно закончить только догадками. Каждое поле здесь проверено: у него ровно одна картинка, до которой можно дойти, читая по одной строке.
- С чего начать нонограмму 10x10?
- Ищите числа, длинные для своей строки: сумма вместе с пропусками около 10 или один блок от 6 клеток. Сначала посчитайте и найдите пересечения у них, затем переходите к пересекающимся строкам.