Техніка Медуза в судоку: просунутий метод виключення 4×4
Jellyfish (Медуза) — це просунута техніка судоку, яка є розширенням X-Wing (2×2) та Swordfish (3×3). Назва походить від форми медузи — складний патерн 4×4 нагадує щупальця медузи. Основний принцип: коли кандидат зустрічається в чотирьох рядках лише в чотирьох стовпцях, його можна виключити з інших клітинок цих чотирьох стовпців.
Якщо число в чотирьох рядках може розміщуватися лише в одній і тій же групі з чотирьох стовпців (у будь-яких 2-4 з цих стовпців у кожному рядку), то це число в цих чотирьох рядках обов'язково займе чотири позиції в цих стовпцях. Тому клітинки в цих чотирьох стовпцях, які не належать до цих чотирьох рядків, не можуть містити це число.
Правило Jellyfish
Якщо кандидат у чотирьох рядках може розміщуватися лише в одній і тій же групі з чотирьох стовпців,
тоді цей кандидат можна видалити з інших рядків цих чотирьох стовпців (які не входять до Jellyfish).
Перед читанням цієї статті рекомендуємо спочатку освоїти техніки X-Wing та Swordfish, які є основою для розуміння Jellyfish.
Приклад: рядковий Jellyfish
Розглянемо приклад Jellyfish з кандидатом 3 у рядках 1, 2, 4 та 9.
Аналіз розподілу кандидата 3
Спочатку розглянемо розподіл кандидата 3 по рядках:
Рядок 1: кандидат 3 зустрічається в
- R1C3: кандидати {3, 5}
- R1C6: кандидати {1, 3, 4, 8}
→ 3 у рядку 1 може бути лише в стовпці 3 або 6
Рядок 2: кандидат 3 зустрічається в
- R2C3: кандидати {1, 3, 6}
- R2C6: кандидати {1, 3, 6}
- R2C9: кандидати {1, 3}
→ 3 у рядку 2 може бути лише в стовпці 3, 6 або 9
Рядок 4: кандидат 3 зустрічається в
- R4C1: кандидати {3, 8}
- R4C6: кандидати {3, 8}
→ 3 у рядку 4 може бути лише в стовпці 1 або 6
Рядок 9: кандидат 3 зустрічається в
- R9C1: кандидати {3, 6, 8}
- R9C3: кандидати {2, 3, 8}
- R9C6: кандидати {2, 3, 6}
- R9C9: кандидати {1, 3, 8}
→ 3 у рядку 9 може бути лише в стовпці 1, 3, 6 або 9
Виявлення патерну Jellyfish
- Рядок 1: стовпці 3, 6 (2 позиції)
- Рядок 2: стовпці 3, 6, 9 (3 позиції)
- Рядок 4: стовпці 1, 6 (2 позиції)
- Рядок 9: стовпці 1, 3, 6, 9 (4 позиції)
- 3 у рядку 1 повинна бути в стовпці 3 або 6
- 3 у рядку 2 повинна бути в стовпці 3, 6 або 9
- 3 у рядку 4 повинна бути в стовпці 1 або 6
- 3 у рядку 9 повинна бути в стовпці 1, 3, 6 або 9
Тому чотири числа 3 у цих рядках повинні розміститися в 4 позиціях стовпців 1, 3, 6 та 9. Це означає, що числа 3 у стовпцях 1, 3, 6 та 9 вже зайняті цими чотирма рядками.
- R3C3: видаляємо кандидат 3
- R7C3: видаляємо кандидат 3
- R3C6: видаляємо кандидат 3
- R7C6: видаляємо кандидат 3
- R3C9: видаляємо кандидат 3
- R7C9: видаляємо кандидат 3
- R6C1: видаляємо кандидат 3
- R8C1: видаляємо кандидат 3
Jellyfish: число 3 у рядках 1, 2, 4 та 9 зустрічається лише в стовпцях 1, 3, 6 та 9.
Дія: видаляємо кандидат 3 з клітинок R3C3, R7C3, R3C6, R7C6, R3C9, R7C9, R6C1, R8C1.
Дві форми Jellyfish
Подібно до X-Wing та Swordfish, Jellyfish має дві симетричні форми:
1. Рядковий Jellyfish (Row-based Jellyfish)
Це випадок з прикладу вище:
- Об'єкт спостереження: чотири рядки
- Характеристика патерну: кандидат у цих чотирьох рядках зустрічається лише в одній групі з чотирьох стовпців
- Ціль виключення: видаляємо кандидат з інших рядків цих чотирьох стовпців
2. Стовпцевий Jellyfish (Column-based Jellyfish)
Протилежна форма з тим же принципом:
- Об'єкт спостереження: чотири стовпці
- Характеристика патерну: кандидат у цих чотирьох стовпцях зустрічається лише в одній групі з чотирьох рядків
- Ціль виключення: видаляємо кандидат з інших стовпців цих чотирьох рядків
Рядковий Jellyfish видаляє зі стовпців, стовпцевий Jellyfish видаляє з рядків.
Це узгоджується з правилами X-Wing та Swordfish: спостерігаємо рядки — видаляємо зі стовпців, спостерігаємо стовпці — видаляємо з рядків.
Порівняння технік серії Fish
Jellyfish є частиною серії технік Fish, разом з X-Wing та Swordfish формуючи повну систему:
| Техніка | Рядки/Стовпці | Складність | Частота |
|---|---|---|---|
| X-Wing | 2 рядки × 2 стовпці | Легко | Часто |
| Swordfish | 3 рядки × 3 стовпці | Середньо | Іноді |
| Jellyfish | 4 рядки × 4 стовпці | Важко | Рідко |
Теоретично можуть існувати Squirmbag (5×5), Whale (6×6) та інші більші патерни Fish, але на практиці вони вкрай рідкісні. Судоку 9×9 може мати максимум 9 рядків та 9 стовпців, а Fish з 5+ рядками практично ніколи не зустрічаються в звичайних головоломках. Тому достатньо освоїти Jellyfish (4×4) для вирішення більшості складних судоку.
Як знайти Jellyfish?
Пошук Jellyfish вимагає систематичного спостереження і є складнішим за X-Wing та Swordfish:
- Jellyfish вимагає рівно чотири рядки, де позиції кандидата охоплюють лише чотири стовпці
- У кожному рядку кандидат може зустрічатися в 2, 3 або 4 позиціях, але всі повинні бути в одній групі з чотирьох стовпців
- Якщо чотири рядки охоплюють 5 або більше стовпців, Jellyfish не утворюється
- Jellyfish — це техніка по рядках і стовпцях, не пов'язана з блоками
- Через складність виявлення, рекомендуємо спробувати цю техніку лише коли X-Wing та Swordfish не дають результату
Підсумок техніки
Ключові моменти застосування техніки Jellyfish:
- Розмір патерну: 4 рядки × 4 стовпці — найбільший поширений патерн серії Fish
- Умова виявлення: всі позиції кандидата в чотирьох рядках охоплюють лише чотири стовпці
- Гнучкість: у кожному рядку може бути 2-4 позиції кандидата, не обов'язково всі чотири стовпці
- Правило виключення: рядковий Jellyfish видаляє зі стовпців, стовпцевий — з рядків
- Застосування: останній засіб, коли X-Wing та Swordfish не допомагають
- Практична порада: через складність виявлення рекомендуємо використовувати позначки кандидатів
Jellyfish на практиці зустрічається дуже рідко, але в деяких експертних головоломках може бути єдиним шляхом до розв'язання. Рекомендації:
- Спочатку використайте всі середні техніки, X-Wing та Swordfish
- Вибирайте для аналізу числа з меншою кількістю кандидатів
- Використовуйте позначки кандидатів для організації розподілу по рядках
- Якщо ручний аналіз занадто складний, використовуйте розв'язувач для навчання
Поради для практики
Щоб опанувати техніку Jellyfish, рекомендуємо:
- Спочатку добре освоїти X-Wing та Swordfish — вони є основою для Jellyfish
- Зрозуміти спільний принцип серії Fish: логіку виключення патерну N×N
- При розв'язанні експертних головоломок свідомо перевіряти наявність Jellyfish
- Використовувати розв'язувач для пошуку прикладів Jellyfish та перевірки свого розуміння
Почніть гру судоку експертного рівня і спробуйте знайти та застосувати техніки серії Fish!