این روش در بین تکنیک ها ی حرفه ای و
فوق حرفه ای شاید تنها روشی باشد که می تواند در بعضی موارد نه تنها یک عدد
مربوط به یک خانه بلکه حتی عدد مربوط به چند خانه را برای ما پیدا کند.
اما از سوی دیگر تشخیص این روش در جداول بسیار بسیار مشکل است. این روش به
دو قسمت کلی تقسیم می شود.
1. رنگ آمیزی ساده (simple Coloring)
2. رنگ آمیزی چندگانه (multi Coloring)
یادگیری این روش باید پیوسته و گام به گام باشد، لذا تقاضا دارم ریز به ریز نکته ها رو دقت کنید تا این روش را خوب فرابگیرید.
1. رنگ آمیزی ساده:
اساس این روش و رنگ آمیزی چندگانه بر مبنای جفت های مزدوج است. خوب حالا یعنی چه؟
خیلی از شما با منطق صفر و یک یا جبر بولی آشنا هستید. طبق این منطق ما همواره برای یک موضوع معین دو وضعیت داریم یا هست یا نیست.
مثلاً چراغ یا روشنه یا خاموش. نیمه روشن و نیمه خاموش نداریم. خوب چه
ربطی به سودوکو داره! یه توضیح مختصر میدم و بعدش با شکل بیشتر توضیح میدم.
منظور از حفت های مزدوج در جدول سودوکو اینه که یک کاندیدا در سطر، ستون
یا باکس در جدول سودوکو تنها در دو خانه طاهر بشه، بنابراین اگر هر کدام از
این خانه ها نتوانند کاندید مورد نظر باشند خانه دیگر قطعاً تنها محل برای
آن کاندید خواهد بود. برای مثال در شکل زیر عدد 7 در سطر نشان داده شده
تنها در دو جا می تواند باشد. بنابراین اگر بتوانیم یکی از محل ها را حذف
کنیم، قطعاً خانه دیگر باید 7 باشد. پس همین جا فهمیدیم که در این روش باید
در سطر، ستون و یا باکس ها به دنبال کاندیداهایی بگردیم که تنها در دو جا
ظاهر شده اند.

در رنگ آمیزی ساده ما از دو رنگ استفاده
می کنیم. یک کاندید مشخص که در چند موقعیت از جدول تنها در 2 جا طاهر شده
است را انتخاب می کنیم. این کاندیداها باید تشکیل یک زنجیره مزدوج را
بدهند. یعنی انتخاب یکی از کاندیداها موجب شود در خانه هایی که ما بین آنها
ارتباط برقرار کرده ایم، کاندید سایر خانه ها را معلوم نماید. به مثال زیر
توجه فرمایید تا بیشتر متوجه شوید.

کاندیدای مورد نظر در جدول فوق عدد 1 است. در بعضی از
سطرها، ستون ها و باکسها این عدد تنها در 2 جا قرار دارد. آیا می توانید
آنها را شناسایی نمایید. این محل ها به قرار زیرند:
سطر چهارم، ستون ها 3 و 7
سطر پنجم، ستون ها 1 و 4
ستون سوم، سطر های 4 و 8
ستون پنجم، سطر های 1 و 6
باکس 4 خانه های {19} و {12}
باکس 5 شامل 2 خانه {17}
تمام این خانه هایی که به آنها اشاره
کردم یا سبز هستند و یا نارنجی، که همگی از جفت مزدوج تشکیل شده اند.
همانطور که ملاحظه می شود یک ارتباط قوی بین آنها برقرار است به طوریکه با
انتخاب یکی از خانه ها به عنوان 1 سایر خانه ها نیز مشخص خواهند شد که 1
هستند یا نه. به این ترکیب زنجیره مزدوج می گوییم.
یک زنجیره مزدوج جدای از خانه های نام
برده شده نیز در جدول وجود دارد که مجزا از اولی است و با رنگ های صورتی و
آبی نشان داده شده است . شامل سه خانه است. فعلاً با آن کاری نداریم و
تمرکز خود را به خانه های سبز و نارنجی بدهید.
آیا می توانید بگویید در زنجیره سبز/نارنجی چگونه ترکیب رنگ ها را بدست آورده ایم؟ گفتیم که در این روش خانه ای یا هست یا نیست.
اگر نباشد چون تنها در دو محل کاندید مورد نظر را داریم، پس خانه دیگر محل
آن کاندید خواهد بود. به شکل نگاه کنید، اگر خانه {19} در سطر 5 و ستون 1
جدول عدد 1 باشد (سبز رنگ شده) خانه {12} در همان باکس 1 نخواهد بود (نارنجی رنگ شده) پس چون در همین ستون سوم تنها 2جا می توان 1 قرار داد باید خانه {12} در ستون 3 و سطر 8 عدد 1 باشد (سبز رنگ شده) دوباره چون همین {12} در سطر 4 و ستون 3 نمی تواند 1 باشد، خانه {17} در همان سطر 4 و ستون 7 باید 1 باشد (سبز رنگ شده) به اساس همین منطق خانه {19} اول را که 1 انتخاب کردیم پس خانه {17} در همان سطر 5 و ستون 4 نمی تواند 1 باشد (نارنجی رنگ شده) پس خانه {17} در همان باکس 5 باید 1 باشد (سبز رنگ شده) و جون این خانه 1 شده پس خانه {147} در سطر 1 و ستون 5 نمی تواند 1 باشد (نارنجی رنگ شده) زیرا در این ستون 2 جا 1 داریم که قبلاً پر شده.
اگر خوب به جمله های بالای دقت کرده
باشی هرجا که من گفتم می تواند 1 باشد خانه سبز رنگ شده و هر جا که من گفتم
نمی تواند 1 باشد خانه نارنجی رنگ است! انتخاب رنگ ها اختیاری است اما در
این زنجیره همه خانه هایی که 1 نیستند همرنگ و تمام خانه هایی که 1 هستند نیز همرنگ هستند.
توضیحات بالا در حقیقت نحوه رنگ آمیزی
ساده است، در این روش ما برای خانه های زنجیره از دو رنگ مجزا استفاده می
کنیم، برای این کار از یک خانه در زنجیره شروع کنید، آن خانه را فرض کنید
کاندید مورد نظر باشد (یا اگه دوست داشتید فرض کنید نباشد) حالا تمام خانه
های دیگر زنجیره را بررسی نمایید که آیا با انتخاب اول شما یکی است یا
مخالف آن است. یعنی فرضاً شما خانه اول را 1 انتخاب کردید و رنگ آن را سبز
انتخاب کردید، حالا در زنجیره هر خانه ای که 1 شد را سبز و هر خانه ای که
به دلیل قرارگیری 1 در سطر یا ستون منتهی به آن نتوانست 1 شود را نارنجی
کنید. بدین ترتیب شما رنگ آمیزی ساده را در یک زنجیره به اتمام رسانده اید.
حالا برای اینکه سرعتتون بره بالا،
همیشه که مدادرنگی نداریم! بهتره از روش دایره- مثلث استفاه کنید که بین
حرفه ای ها مرسوم است. یعنی اول زنجیره رو پیدا کنید و سریع تو ذهنتون بگید
هست و یک دایره دور خانه اول بکشید، بعد با این انتخاب هرجا که تو ذهنتون
برای خانه های بعدی زنجیره گفتید هست، دایره و هرجا گفتید نیست یه مثلث (یا
مربع) به انتخاب خودتون بکشید. فقط حواستون باشه دایره رو با مربع یا مثلث
قاطی نکنید که اشتباه بشه و تحلیلتون غلط از آب در بیاد! بهتره همین جا
برای خودتون یک انتخاب کنید و همیشه با اون جلو برید. من خودم دایره مثلث
رو برای رنگ آمیزی ساده دارم و برای چندگانه هم مربع و بعدش خط تیره پررنگ
زیر کاندید را به اون اضافه می کنم.
حالا میرسیم به اصل کار که حذف کاندید و
یا درصورت خوش شانسی یافتن عدد در خانه است. تمام حذف کاندید در این تکنیک
از تعامل بین این خانه های غیر هم رنگ یا مخالف حاصل می شود. یعنی باید
دنبال محل تلاقی دو رنگ مخالف هم باشید تا اگر در آنجا همان کاندید وجود
دارد، آنرا حذف نمایید. مثلاً شکل بالا را نگاه کنید، خانه سطر 8 و ستون 4
جدول نمی تواند 1 باشد. چرا؟
زیرا این خانه از محل تلاقی دو رنگ
مخالف هم سبز و نارنجی حاصل شده است. یعنی اگر خانه {12} بتواند 1 باشد در
این صورت خانه {17} نمی تواند 1 باشد و برعکس. بنابراین در هر شرایط یکی از
این 2 خانه قطعاً 1 است و هر کدام که 1 باشند خانه ستاره دار قرمز در مسیر
سطر یا ستون این دو خانه است، پس قطعاً نمی تواند 1 باشد و عدد 4 تنها
کاندید این خانه می شود که با یافتن آن جدول باز خواهد شد.
در این روش یک اتفاق خوشایند نیز می
تواند رخ دهد و آن این است که در حین رنگ آمیزی در یک سطر، ستون و یا باکس
جدول برای یک کاندید مشخص رنگ آمیزی شده، دو خانه همرنگ در یک سطر یا ستون
یا باکس، ایجاد شود. معنی این حالت این است که با انتخاب اول شما برای یک
کاندید در زنجیره و دانستن این موضوع که تمام خانه هایی که انتخاب کرده اید
در سطر، ستون و یا باکس زنجیره دارای 2 کاندید هستند (یعنی تمام خانه های
2کاندیدی هستند)، در یک سطر، ستون یا باکس از جدول، امکان قرارگیری کاندیدی
که شما آنرا انتخاب کردید در دو محل به طور قطع حاصل شده است. اگر اینطور
شود باید خیلی خوشحال باشید زیرا این یک تناقض محض با قانون اولیه سودوکو
است که در یک سطر، ستون یا باکس عدد تکراری نداریم. بنابراین تمام خانه های
همرنگ با این دو خانه غلط هسنتد و تمام خانه های با رنگ مخالف آن درست
هستند که احتمال یافتن 2-3 خانه یا بیشتر میسر خواهد شد. اگر خوب متوجه
نشدید مثال زیر را نگاه کنید.
شکل زیر نمونه ای از این اتفاق خوب است.
در اینجا ما در تعدادی خانه از جدول
کاندید 8 پیدا کرده ایم که در دو جا قرار دارند. محل این جفت ها را خودتان
هم میدونید اما من یکبار دیگه مختصراً میگم.
باکس های 5، 6 و 9 جدول – سطر های 4، 5 و 8 جدول – ستون های 5، 7 و 8 جدول
بنابراین یک ارتباط قوی بین این جفت ها
در زنجیره ایجاد شده است. هر کدوم از خانه های این زنجیره رو که دوست دارید
اول بگیرید، به ترتیب طبق روشی که گفتم "هست-نیست" را در
کل خانه های زنجیره تکرار کنید و شروع به رنگ آمیزی کنید. قطعاً همین
ترکیب رنگ شکل بالا باید حاصل بشه. حالا طبق رنگ آمیزی بالا به خانه های
آبی رنگ نگاه کنید. 2تا خانه آبی در یک باکس (باکس8) هستند (تناقض اول)،
2تا خانه آبی در یک سطر (سطر 9) هستند (تناقض دوم) و 2تا خانه آبی هم در یک
ستون (ستون 4) هستند (تناقض سوم). پس نتیجه اینه که کلاً تمام رنگ های آبی
غلط هستند و همه صورتی ها درست! پس کاندید 3 تا خونه دراومد و همچنین 2تا
خانه آبی غلط در باکس 8 نیز سبب پیدا شدن محل قرارگیری 8 درست در این خانه
می شود (خانه سطر 9 و ستون 4 باید 8 باشه).
پس چی شد؟ این شد که درسته ما
نمیدونستیم اولش که آبی ها درستند با صورتی ها اما از رنگ آمیزی ها فهمیدیم
که هر کدوم درست باشند، قطعاً آبی ها یا همشون با هم اتفاق می افتند یا
هیچ کدوم اتفاق نمی افتند و یا صورتی ها همشون باهم هستند یا نیستند. پس
حالا که قرار آبی ها همشون با هم اتفاق بیفتند باید 2 تا خانه آبی در یک
باکس، سطر یا ستون حاصل بشند که این خلاف قانون اول سودکو بوده، زیرا طبق
تحلیل ما همه آبی ها اگه درست باشند باید همشون با هم اتفاق بیفتند و در
این صورت مثلا 2تا خانه آبی در یک اکس داریم (یعنی 2تا 8 در یک باکس، که
قطعاً همچین چیزی نمیشه) و نتیجه اینه که کلاً همه آبی ها غلطند (چون باید
با هم اتفاق بیفتند و میبینیم که نمیشه و قانون سودوکو زیر پا گذاشته
میشه)! حالا کلا دیگه جدول حل شد و فقط باید خانه ها پر شوند. همین!
2. رنگ آمیزی چندگانه
قطعاً این روش کمی پیچیده تر از نوع
ساده است و شناسایی اون سخت تر است. در این روش باید به دنبال چند زنجیره
جدا باشیم که دارای ارتباط قوی بین خود هستند. اما این زنجیره های جدا به
خودی خود کمکی در حذف کاندید نمی کنند. اما بین هر کدام از این زنجیره ها
یک ارتباط ضعیف وجود دارد، یعنی دو زنجبره مجزا در یک خانه یا چند خانه با
هم از طریق سطر، ستون یا باکس ارتباط دارند. این روش کلاً دو ساختار یا دو
تیپ مجزا دارد که با هم بررسی می کنیم.
الف. ساختار اول:
به شکل زیر نگاه بیاندازید.
کاندیدای مورد بحث عدد 4 است. طبق شکل
فوق ما دو زنجیره دارم. یکی سبز/نارنجی و دیگری صورتی/آبی هیچ کدام از این
زنجیره ها به تنهایی قادر به حذف کاندیدایی برای ما نیستند. اما طبق شکل
فوق دو زنجیره با هم دارای ارتباط هستند. یکی از خانه های سبز با آبی
ارتباط دارد و یکی از خانه های نارنجی هم با خانه آبی دیگر. این ارتباط از
نوع ضعیف است زیرا مثلاً در ستون دوم که خانه های نارنجی از زنجیره اول و
آبی از زنجیره دوم با هم لینک شد اند، در این ستون یک خانه دیگر هم که خانه
سطر 9 و ستون 2 است دارای کاندید 4 است. این شرایط برای سطر 9 نیز صادق
است. بنابراین اینگونه می توان گفت که مثلاً در ستون دوم اگر خانه نارنجی 4
باشد، در این صورت خانه آبی نمی تواند 4 باشد و یا برعکس اگر خانه آبی 4
باشد، خانه نارنجی نمی تواند 4 باشد. اما ممکن است هیچ کدام هم نتوانند 4
باشند در این صورت خانه سطر 9 و ستون 2 می تواند 4 باشد. این نوع ارتباط را
از نوع ضعیف می گوییم. خوب حالا که نحوه اتباط دو زنجیره را فهمیدیم یرویم
سراغ تحلیل و منطق حذف!
اول از همه ما میدونیم که یا نارنجی ها
درست اند یا سبزها، از طرف دیگر یا آبی ها درستند و یا صورتی ها. همچنین در
هر گروه از رنگ ها اگر یکی از اونها ثابت بشه که نتونند باشند تمام خانه
های دیگر که همرنگ هستند نیز نمی توانند کاندید مورد نظر را در خود داشته
باشند (مثلاً اگه مشخص بشه یکی از خانه های آبی رنگ نمیتونه کاندید باشه،
کل آبی ها همشون باهم از کاندید شدن حذف خواهند شد). اینها رو از رنگ آمیزی
ساده میدونیم، اگه با این تحلیل ها مشکل دارید بروید بالا و روش را از اول
و رنگ آمیزی ساده مجدداً بخوانید.
اتفاقی که اینجا افتاده اینه که اگر
نارنجی ها درست باشند به دلیل ارتباط ضعیف آنها با آبی ها از طریق ستون
دوم، آبی ها یکیشون غلط میشه (در ستون دوم) چون نارنجی بالاییش درسته. پس
یکی از آبی ها غلطه و طبق تحلیل ها کلاً آبی ها غلط اند. اگر سبزها درست
باشند باز هم به دلیل ارتباط ضعیف آنها با آبی ها از طریق سطر نهم جدول،
دوباره یکی از آبی ها غلط شده پس کل آبی ها باز هم غلط شدند. نتیجه اینه که
چه نارنجی ها درست باشند و چه سبزها (که هردوشون مربوط به یک زنجیره هستند
و بالاخره یکیشون درست اند)، آبی ها تحت هیچ شرایطی نمی تونند درست باشند.
پس کل آبی ها غلط هستند. نتیجه این تحلیل ها درست بودن خانه صورتی است چون
آبی زنجیره دوم غلطه و رنگ مخالف اون یعنی صورتی ها درسته که اینجا یدونه
خانه است. که البته خانه های دیگری را باز خواهد کرد.
برای تمرین بیشتر از همین ساختار به شکل زیر که برای کاندید 3 است نگاهی بیانداز.
امیدوارم دلیل عدم قرارگیری 3 در خانه
های زرد رنگ و حذف تمام آنها و انتخاب خانه های نارنجی رنگ به عنوان تنها
کاندید 3 را بتوانید تحلیل کنید!
این از ساختار اول، حالا بریم سراغ ساختار دوم از این تکنیک خارق العاده.
ب. ساختار دوم:
به شکل زیر نگاه بیاندازید.
کاندید مورد نظر در این جدول عدد 4 است.
در این جدول هم ما دو زنجیر جدا از هم داریم. نارنجی/سبز با هم و
صورتی/آبی هم باهم. این دو زنجیر در دو سطر 5 و 8 با هم یک ارتباط ضعیف
ایجاد کرده اند (ضعیف از این جهت که در این سطرها جاهای دیگه هم میتونه 4
باشه. فرق این ساختار با نوع اول در این است که رنگ های مخالف هر دو زنجیره
با هم لینک شده اند. یعنی نارنجی با آبی لینک دارد، حالا مخالف آن یعنی
سبز هم با مخالف آبی یعنی صورتی لینک شده است. نتیجه آن این است که این
ارتباط ضعیف بین زنجیره ها سبب ایجاد یک زنجیره بزرگتر قوی شده است.
بنابراین در این ساختار بین هر دو رنگ مخالف هم از هر گروه از زنجیره ها،
اگر در سطر، ستون یا باکس تلاقی دهنده آنها کاندید 4 دیگری باشد، چاره ای
جز حذف شدن ندارد! در این جدول در دو جا در محل های سطر 5 و ستون 3 و سطر 8
و ستون 7 این اتفاق افتاده است که با ستاره قرمز نشان داده شده است. چرایی
این موضوع به این دلیل است:
اگر خانه آبی سطر 5 ستون 2 عدد 4 باشد.
بنابراین خانه بقلی آن یعنی سطر 5 و ستون 3 نمی تواند 4 باشد. حالا اگر
همین خانه آبی 4 نباشد، بنابراین خانه صورتی پایین آن در همان ستون 2 باید 4
باشد، پس خانه سبز در سطر 8 و ستون 9 نمی تواند 4 باشد، یعنی سبزها 4
نیستند و باید نارنجی ها ۴ باشند که نارنجی خانه سطر 5 و ستون 8 باید ۴
باشد. بنابراین باز هم خانه سطر 5 و ستون 3 به دلیل 4 شدن خانه نارنجی سطر 5
و ستون 8 نمی تواند 4 باشد. پس هر کدام از اعداد این زنجیره کلی 4 باشد
خانه سطر 5 و ستون 3 نمی تواند 4 باشد و قطعاً از کاندیدهای این خانه حذف
می شود. در مورد حذف 4 از خانه سطر 8 و ستون 7 هم همین استدلال حاکم
است.اگه خانه سبز در سطر ۸ عدد 4 باشه که مشخصاً خانه ستاره دار نمی تواند 4
باشد. اگر خانه سبز رنگ 4 نباشد، پس نارنجی ها 4 شده و باعث 4 نشدن آبی
طبق سطر ۵ جدول شده و 4 نشدن آبی ها باعث 4 شدن صورتی شده و باز هم خانه 4
ستاره دار در سطر 8 نمی تواند 4 باشد چون در مسیر صورتی است که باید ۴
باشد. از هر طریق که می خوای شروع کن، بالا بری پایین بیای خانه های ستاره
دار نمی توانند 4 باشند. همین!
برای تمرین بیشتر به شکل زیر که از همین ساختار هست و برای کاندید 9 است نگاه کن.
امیدوارم دلیل 9 نشدن خانه سطر 2 و ستون 1 را بتوانی پیدا کنی!
پس کلاً رنگ آمیزی چندگانه دو ساختار دارد که بررسی شد. در ساختار اولی یکی از رنگ های یک زنجیره (رنگ اول) با هر دو رنگ از زنجیره دیگر ارتباط دارد که سبب حذف تمام خانه های رنگ اول
از کاندیدها خواهد شد. در ساختار دومی رنگ های دو زنجیره مجزا از هم به
طور مخالف هم با هم ارتباط دارند یعنی رنگ اول از رنجیره اول با رنگ اول از
زنجیره دوم و رنگ دوم ها از هر دو زنجیره هم با هم ارتباط دارند (مثلاً
آبی و صورتی برای زنجیره اول باشه و سبز و نارنجی برای زنجیره دوم، در این
صورت آبی فرضاً با سبز از زنجیره دوم ارتباط داره و صورتی هم با نارنجی
ارتباط داره) که سبب حذف کاندیدها از خانه هایی می شود که محل تقاطع سطر،
ستون و یا باکس خانه های غیر همرنگ (مثلاً تقاطع سبز با آبی یا سبز با
صورتی یا صورتی با نارنجی یا صورتی با سبز و .....) در کل جدول است.
این روش گرچه سخت است اما به نظر کارآمد
میاد. شاید جرء گزینه های آخر باشه اما تمرین بیشتر میتونه موقعیت استفاده
ازش در جداول را برای ما بیشتر روشن کنه. من خودم وقتی این روش رو
میخواستم یاد بگیرم 3-4 بار اول که خوندم اصلاً هیچی نفهمیدم! این شد که به
این نتیجه رسیدم هرچی از این روش فهمیدم رو بگم تا نکته ای بی جواب نمونه و
هرچی به ذهنم می رسید که میتونه سوال برانگیز باشه رو توضیح دادم. گرچه
نگاه تیزبین و سوالات کلیدی و بحث برانگیز شما خوانندگان گرامی همیشه گره
گشای کلید تکنیک ها است.
برچسبها:
تکنیک های حل سودوکو,
تکنیک های فوق حرفه ای