همان سؤال قبل، با این تفاوت که خروجی دستورهای A، B و C بهصورت زیر است:
تعداد برنامههایی را پیدا کنید که از دستور C دقیقاً یکبار استفاده کرده باشد و به ازای ورودی (۰,۰) خروجی (۲,۲) را تولید کند.
پاسخ
گزینه (۴) درست است.
اگر مجاز نبودیم از دستور C استفاده کنیم٬ آنگاه تعداد برنامههای مطلوب برابر با ۶ میشد که به شکل زیر میباشند:
AABB⟶ABAB⟶ABBA⟶BBAA⟶BABA⟶BAAB
حال که قرار است دقیقا یک عدد دستور C در لابهلای دستورها قرار داده شود٬ آن را در جای دلخواه قرار داده و تمام دستورهای بعد از آن را تعویض میکنیم(A را به B و B را به A تبدیل میکنیم)٬ که در این صورت هر برنامه بهدست آمده برنامه مطلوب خواهد شد. به عنوان مثال اگر حرف C را به عنوان دومین حرف از سمت چپ برنامه ABAB قرار دهیم آن برنامه به شکل ACBAB تغییر خواهد یافت که نقطه (0,0) را به (2,2) تبدیل میکند.
چون در هر مورد برای C پنج جای متمایز وجود دارد. بنابراین تعداد دنبالههای مطلوب 6×5 یعنی ۳۰ خواهد شد.