برنامهٔ بین‌المللیِ خیارشورها

مسئله. کارخانه‌های هوشمندسازیِ خیارشورها کم‌کم داشتند پیشرفته می‌شدند و همین باعث می‌شد خودِ خیارشورها هم پیشرفته‌تر شوند. بسیاری از کشورها کارخانه‌های هوشمندسازی داشتند و به همین دلیل خیارشورهایی با ملیت‌های مختلف به وجود آمدند.

روزی خیارشورها تصمیم گرفتند یک برنامۀ بین‌المللی راه بیندازند و نمایندۀ خیارشورهای سراسرِ جهان را به آن دعوت کنند. قرار بود چند گروهِ مختلف تشکیل شود که خیارشورهای متخصص در هر موضوعی دربارۀ آن موضوع تصمیماتی بگیرند. خیارشورهای متخصصِ کامپیوترِ اهلِ هر کشور در گروهِ کامپیوتر و خیارشورهای متخصصِ آشپزی در گروهِ آشپزی عضو بودند. و خلاصه هر خیارشوری که دعوت بود در یک گروهِ تخصصی عضو بود.

انسان‌ها که این پیشرفتِ خیارشورها را برای خود خطرناک می‌دیدند، تصمیم گرفتند جاسوس‌هایی را به این برنامه بفرستند. و از جاسوس‌ها خواستند هر اطلاعاتی که حتی به نظرشان بی‌اهمیت می‌رسد را ثبت کنند شاید این اطلاعات جایی به درد بخورد.

در این برنامه، گروهِ جلوگیری از انتشارِ گازهای گلخانه‌ای شش عضو داشت که یکی از آن‌ها یک انسان بود که توانسته بود خود را به عنوانِ یکی از خیارشوهای دعوت‌شده جا بزند (معلوم نیست چه بلایی سرِ خیارشورِ واقعی آورده بود!).

اولین پیامی که این جاسوس توانست به مرکزِ فرماندهیِ جاسوس‌ها ارسال کند چنین چیزی بود:

قرار بود در جلسۀ گجاگگ (گروهِ جلوگیری از انتشارِ گازهای گلخانه‌ای) خیارشورهای سه کشور شرکت داشته باشند و هر کشور دو نماینده ارسال کند. که من توانستم بفهمم یکی از این کشورها اکوادور است. به همین دلیل یکی از نماینده‌های این کشور را حذف کردم! و خودم را به جای او جا زدم. من متوجه شدم که برای خیارشورها مهم است که در این جلسه هر خیارشور با چند خیارشورِ دیگر تفاهم‌نامۀ همکاری امضا کند. حتی تعداد امضاهای تفاهم‌نامه‌‌های خود را در یک پیام فوقِ سری برای کشورهای خود ارسال کردند که من نتوانستم آن‌ها را رمزگشایی کنم. البته نمی‌دانم داشتنِ این اطلاعات دقیقاً به چه دردی می‌خورد اما چون دستور داده بودید هرچه فهمیدم را برایتان ارسال کنم، باید بگویم من نکاتِ زیر را نیز متوجه شدم:

هیچ نماینده‌ای از کشورها با هم‌وطنِ خودش تفاهم‌نامه امضا نکرد. (هیچ خیارشوری با خودش هم تفاهم‌نامه امضا نکرد!) و هیچ دو خیارشوری بیش‌تر از یک تفاهم‌نامه امضا نکردند. و البته فهمیدم که تعدادِ تفاهم‌نامه‌هایی که هر خیارشور با بقیه امضا کرده است با تعدادِ امضای تفاهم‌نامه‌های هیچ خیارشورِ دیگری برابر نیست. مثلاً فقط یک خیارشور وجود داشت که دقیقاً با دو خیارشورِ دیگر تفاهم‌نامه امضا کرده باشد. البته این مورد دربارۀ خودم درست نیست و من فقط اطلاعات دیگر خیارشورها را می‌گویم. در نهایت فهمیدم امضای تفاهم‌نامه یک عملِ دوطرفه است. یعنی اگر خیارشورِ الف با خیارشورِ ب تفاهمی داشته باشد، هر دو طرف یک تفاهم‌نامهٔ مشترک را امضا می‌کنند.

فکر می‌کنم اگر بتوانیم بفهمیم نمایندۀ هر کشور و به ویژه آن یکی خیارشوری که از اکوادور آمده است ( و هم‌وطنِ من حساب می‌شود!) با چند خیارشورِ دیگر تفاهم‌نامه امضا کرده است، اطلاعاتِ به دردبخوری باشد و من با همین اطلاعات بتوانم بیشتر به او نزدیک شوم.

البته هیچ گاه مشخص نشد چرا این جاسوس خودش سعی نکرده بود بفهمد خیارشورِ اکوادوری با چند خیاشور تفاهم‌نامه امضا کرده است اما تصور کنید شما کسی هستید که قرار است در مرکزِ فرماندهیِ جاسوس‌ها و با دانستنِ اطلاعاتی که جاسوسِ گجاگگ ارسال کرده است به این مسئله پاسخ دهید که خیارشورِ اکوادوریِ واقعی با چند خیارشور تفاهم‌نامه امضا کرده است.

دست به کار شوید.

راهِ‌حل:

این پرسش عجیب و غریبی است و اطلاعات کمی هم به ما داده است. بگذارید هر چیزی که می‌دانیم را کنار هم بگذاریم شاید به کارمان بیاید.

اولاً می‌دانیم خیارشورها از سه کشور اعزام شده‌اند و از هر کشور دو خیارشور. پس مجموعاً 6 خیارشور به جلسه آمده‌اند. از طرفی می‌دانیم تعداد امضاهای تفاهم‌نامه‌ها برابر نیست، آیا می‌توانیم بگوییم بیشترین و کمترین تفاهمی که ممکن است خیارشوری امضا کرده باشد چقدر است؟ آیا ممکن است خیارشوری 7 تفاهم‌نامه امضا کرده باشد؟ خیر! چون این‌ها کلاً 6 نفرند و کسی نمی‌تواند با خودش یا هم‌وطنش تفهاهمی امضا کند. پس حدأکثر ممکن است با 4 نفر تفاهم‌نامه‌ای امضا کند. از طرفی این جاسوس اطلاعات 5 خیارشور دیگر را به ما گفته است پس درواقع هر خیارشور در میان این 5 خیارشور حدأکثر 4 تفاهم‌نامه امضا کرده است. تعداد امضاها هم که متفاوت است، اما چطور اعداد متفاوت 1 و 2 و 3 و 4 را بین 5 نفر تقسیم کنیم که عددی تکراری هم به کسی نیفتد؟ راهی وجود ندارد جز اینکه فرض کنیم یک خیارشور هست که 0 تفاهم‌نامه امضا کرده استیعنی هیچ تفاهم‌نامه‌ای را امضا نکرده است. خوب تا اینجا که چیزهای جالبی فهمیده‌ایم. بیایید کم‌کم ببینیم هر خیارشور دقیقاً با چه کسانی تفاهم کرده است. من شکل زیر را می‌کشم تا بتوانیم از میان این‌ها خیارشورِ اکوادوری را پیدا کنم. من نام خیارشورها را جوری نوشتم که فرقی نکند هر کدام چندتا تفاهم امضا کرده باشد. برای همین هم می‌توانم به دلخواهِ خودم بگویم هر کس چندتا تفاهم امضا کرده استبه شرط اینکه اعداد از 0 تا 4 باشند و غیرتکراری. یعنی دست خودم است که بگویم خیارشور الف همانی است که یک تفاهم امضا کرده است یا خیارشور ب. فرقی ندارد.

پس من فرض می‌کنم خیارشورِ الف، 0، خیارشورِ ب، 1، خیارشور، پ، 2، خیارشورِ ت، 3 و خیارشورِ ث، 4 تفاهم‌نامه امضا کرده‌اند. در مورد جاسوس خودمان هم که فعلاً چیزی نمی‌دانیم.


واضح است که خیارشورِ ث با خودش و خیارشور الف (که با هیچ‌کس تفاهم نکرده) تفاهم‌نامه‌ای امضا نکرده است. در این صورت 4 خیارشور باقی می‌مانند. معلوم می‌شود که خیارشور ث باید با همۀ این 4 خیارشور تفاهم کرده باشد که عددِ 4 تفاهم برای او درست باشد. همین‌جا معلوم است که خیارشور ث با خیارشور الف هم‌وطن است چون الف تنها خیارشوری است که ث با آن تفاهمی امضا نکرده است. پس من در شکل زیر این‌ها را به هم وصل می‌کنم تا معلوم شود چه کسی با چه کسی تفاهم کرده است. الف و ث را هم قرمز کرده‌ام که معلوم باشد هم‌وطن‌اند.


اکنون وضعیت خیارشورِ ت را ببینید. وضعیتِ یکی از 3 تفاهمش معلوم شده است (با خیارشورِ ث بوده است). از طرفی ممکن نیست با خیارشورِ الف تفاهم کرده باشد، چون الف با هیچ‌کس تفاهم نکرده است. خیارشورِ ب هم که فقط 1 تفاهم داشته است که آن هم با خیاروشورِ ث بوده است. پس باید با دو خیارشورِ باقی‌مانده (یعنی خیارشورِ پ و جاسوس) تفاهم کرده باشد که ۳ تفاهمش جور شود. در شکل زیر این موضوع را نمایش داده‌ام. مشخص می‌شود هموطن خیارشور ت هم خیارشور ب است. چون تکلیفِ الف که مشخص شده بود و تنها خیارشوری که با ت تفاهم نکرده است خیارشور ب است، پس این دو باهم هم‌وطن‌اند. در شکلِ زیر هر دو را آبی کرده‌ام.

همین‌جا مشخص شد که هم‌وطنِ جاسوسِ انسان‌ها، خیارشور پ است، چون تکلیف هم‌وطن‌های بقیه روشن شده بود. خیارشورِ پ هم که با 2 نفر تفاهم امضا کرده است. بنابراین ما به پاسخ کاملِ مسئله دست پیدا کردیم چون دنبالِ این بودیم که ببینیم هم‌وطنِ جاسوس چند تفاهم‌نامه امضا کرده است. حالا جاسوس می‌تواند بیشتر به این خیارشور نزدیک شود و اطلاعاتِ بیشتری برای انسان‌ها بیاورد. 

خوب است اگر همین مسئله را در شرایطی حل کنید که 4 کشور و هرکدام دو نماینده ارسال کرده‌اند و بعد 5 کشور و همین‌طور تعداد کشورها را بیشتر کنید. آیا می‌شود همین مسئله را در شرایطی حل کرد که 6 کشور و هرکدام 3 نماینده ارسال کرده باشند؟ در این صورت چه شرط‌هایی باید به مسئله اضافه کنیم تا قابلِ حل باشد؟

برای ادامهٔ کار، بخشِ بعدی را بخوانید.