Головоломка Сингоки
Это загадка Сингоки.
Правила Шингоки:
- Нарисуйте линии между точками, чтобы сформировать единую петлю без пересечений и ответвлений.
- Цикл должен проходить через каждое обведенное число в сетке.
- Для белых кругов петля должна проходить по прямой.
- Для черных кругов петля должна делать поворот на 90 градусов при прохождении через них.
- Цифры в кружках показывают сумму длин двух прямых линий, выходящих из этого круга.
Пример показан ниже для большей ясности.
Пример головоломки:
Ниже показано решение с некоторыми пояснениями:
Обратите внимание, как рассчитывается общая длина для черного круга «6» и белого круга «5».
Фактическая головоломка, которую нужно решить, показана ниже:
Для вашего удобства вы можете использовать эту ссылку , где версия головоломки уже была создана с помощью редактора penpa. Выберите «Mode», чтобы быть «Edge» для рисования линий.
Удачи и приятного времяпровождения!
Ответы
Решение:
Шаг 1:
Начните с протягивания линий через белые круги по краю и исходящих от черных кругов по краю. Черные круги в углах можно удлинить в обе стороны.
![]()
Цифра 9 в верхнем левом углу может быть полностью разрешена, заканчивая единственную точку на расстоянии от белой 3 под ней и черной 2 справа от нее (в противном случае эти меньшие числа будут нарушены). Тогда 2 и 3 также могут быть полностью разрешены, как и белая 3 в строке 7. Мы также можем разместить по крайней мере 3 линейных сегмента, проходящих через белые 4 в строке 2.
![]()
Теперь черная 5 в конце строки 3 может только простирается не более чем на 3 сегмента влево (иначе он пересекает линию от белых 3, нарушая его ограничение). Следовательно, она должна проходить вниз как минимум на 2 сегмента, так как вверх нельзя (линия в конечном итоге окажется в углу). Но это означает, что леска, идущая от 2 в ряду 1, должна проходить вниз на 1 единицу дальше, встречаясь с линией от 5 и устанавливая ее длину равной 1. Таким образом, мы должны иметь 4 единицы линии, идущие вниз от 5.
![]()
Это означает, что черный цвет 3 в конце ряда 9 может выходить по вертикали максимум на 1 единицу и, следовательно, должен выходить на 2 единицы влево.
Между тем, линия, проходящая через белую 7 в нижнем ряду, также может быть продлена как минимум на 3 деления влево (так как только место для 4 справа) и как минимум на 3 вправо (так как не может пересекаться с линией, идущей от 3 внизу слева). Черная 3 над ним может быть частично решена.
![]()
Шаг 2:
Обратите внимание, что 2 в конце строки 10 теперь можно разрешить только одним способом. Затем это разрешает белые 7, две черные тройки в нижнем левом углу, а затем и другие числа в нижнем левом углу.
![]()
Шаг 3:
Затем обратите внимание, что белая 5 не может быть удовлетворена по горизонтали или линия проходит через ближайшую 4 и нарушает ее ограничение. Поэтому вместо этого его необходимо пересечь вертикально. Чтобы избежать нарушения черных 2 под ним, есть только один способ удовлетворить это. Это заставляет 2 соединиться с ближайшим черным 3, а также завершает петлю, проходящую через ближайшую 4, с вычетами, в результате чего правая верхняя часть полностью решается.
![]()
Шаг 4:
Черная тройка в строке 3 должна теперь иметь линию, простирающуюся на 2 клетки влево (она может продолжаться только на 1 вверх или вниз). Затем это приводит к разрешению белых 4 в строке 2 и имеет некоторые побочные эффекты для черного 3 и соседнего с ним черного 5.
![]()
Теперь белый 4 в строке 5 может быть удовлетворен только по горизонтали.
![]()
Шаг 5:
Теперь интересный логический шаг: подумайте, что произошло бы, если бы черную пятерку удовлетворили продолжением линии вниз - мы окажемся в невозможном положении, которое разделяет верх и низ сетки на отдельные петли:
![]()
Таким образом, пятерка должна быть завершена. вместо этого используйте строку слева.
![]()
Шаг 6:
Все 4 свободные точки в центре должны соединиться друг с другом, чтобы избежать тупиков. Таким образом, остальная часть сетки может быть решена:
![]()
и теперь есть только один способ уложить последние сегменты, чтобы сохранить одну единственную петлю!
Лучший способ решить эту проблему - начать с кругов по краям.
Если белый круг находится на краю, вы должны убедиться, что линия, проходящая через него, параллельна краю.
Если черный круг находится на краю, вы знаете, что линия должна входить в него перпендикулярно краю.
После этого и небольшого выведения вы придете к решению.