Готов играть?

Играть в судоку!

XY-цепочка в судоку: метод и пример

ДьявольскиеКлассика + КиллерШаг 25 из 384 минуты чтения

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

В чем суть шаблона

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

Начни с ячейки {z,a}. Ее сосед содержит {a,b} и видит ее. Следующая содержит {b,c} и видит предыдущую, и так далее, пока последняя ячейка не получит {y,z}, то есть вернется к цифре, с которой ты начал. Каждая ячейка делит свою связующую цифру с предыдущей и передает вперед новую.

Теперь предположим, что первая ячейка не z. Тогда она a, поэтому вторая не может быть a и должна быть b, поэтому третья не может быть b, и волна бежит до дальнего конца, где последняя ячейка вынуждена стать z. Либо первый конец равен z, либо последний равен z. Третьего не дано, и каждая ячейка, которая видит оба конца, теряет z.

Y-WingXY-цепочка
Сколько ячеекРовно триТри, четыре, пять и больше
ФормаОпорная ячейка с двумя клешнямиОткрытый путь с двумя концами
ТребованиеОбе клешни видят опорную ячейкуКаждая ячейка видит только соседа
КонцыДве клешниДве крайние ячейки
ИсключенияОбщая цифра, из ячеек, видящих обе клешниЦифра концов, из ячеек, видящих оба конца

Y-Wing это просто самая короткая полезная XY-цепочка, поэтому правило исключения читается так же.

Когда его искать

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

Как применять, шаг за шагом

  1. Отметь все ячейки с двумя кандидатами в сетке.
  2. Выбери начальную ячейку и возьми одну из ее двух цифр как z, цифру, которую надеешься исключить.
  3. Перейди к ячейке с двумя кандидатами, которая видит ее и делит с ней другую цифру.
  4. Продолжай шагать, каждый раз делясь цифрой, которую предыдущая ячейка передала вперед, и никогда не повторяя ячейки.
  5. Остановись, когда вторая цифра текущей ячейки снова окажется z. Цепочка замкнулась.
  6. Удали z из каждой ячейки, которая видит обе крайние ячейки.

Разбор примера

Шесть ячеек с двумя кандидатами: E3 , D2 , H2 , G2 , G9 и E9 . Каждая видит следующую, и каждая пара делит передаваемую цифру: 8 от E3 к D2 (блок 4), 3 от D2 к H2 (столбец 2), 5 от H2 к G2 (столбец 2), 7 от G2 к G9 (строка G) и 9 от G9 к E9 (столбец 9).

  1. Более простые приемы исчерпаны. Посмотри на ячейки только с двумя кандидатами.

  2. В шести ячейках ровно по два кандидата: E3 {3,8}, D2 {3,8}, H2 {3,5}, G2 {5,7}, G9 {7,9} и E9 {3,9}.

  3. Каждая ячейка передает цифру следующей: 8 от E3 к D2 (блок 4), 3 от D2 к H2 (столбец 2), 5 от H2 к G2 (столбец 2), 7 от G2 к G9 (строка G), 9 от G9 к E9 (столбец 9).

  4. Допустим, в E3 нет 3. Тогда в E3 стоит 8, в D2 стоит 3, в H2 стоит 5, в G2 стоит 7, в G9 стоит 9 и в E9 стоит 3.

    Если читать в обратную сторону, цепочка работает так же от E9 к E3.

  5. Значит, на одном из концов цепочки всегда стоит 3: в E3 или E9.

    E6 видит оба конца по строке E.

  6. 3 убрана из E6: она видит оба конца цепочки, и на одном из них стоит 3.

Более простые приемы исчерпаны. Посмотри на ячейки только с двумя кандидатами.

Если E3 не 3, то она 8. Тогда D2 равна 3, H2 равна 5, G2 равна 7, G9 равна 9 и E9 равна 3. Значит, E3 равна 3, или E9 равна 3, или обе. Концы это E3 и E9, а цифра концов 3.

E6 видит оба конца по строке E, поэтому 3 уходит из E6.

E3 и E9 к тому же делят 3 в строке E, поэтому цепочка замыкается в цикл. Решатели называют это Y-циклом, и читается он так же.

Частые ошибки

  • Использовать ячейку с тремя кандидатами. Каждое звено цепочки должно быть строго с двумя кандидатами.
  • Пропустить проверку видимости. Соседи должны делить строку, столбец или блок, а не просто стоять рядом на вид.
  • Исключать из крайних ячеек. Концы входят в шаблон и сохраняют своих кандидатов.
  • Использовать ячейку повторно. Цепочка, которая замыкается на себя, это другой метод с другими правилами.
  • Закончить не на той цифре. Если последняя ячейка не предлагает z, цепочка пока ничего не доказывает: продли ее.

Где это встречается

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