برای حل این مسئله، باید رویکرد مناسبی برای پرسیدن سوالهای مؤثر طراحی کنیم. فرض کنید عددی که بین ۱ تا ۱۰۰ انتخاب کردهاید، \( x \) باشد. هدف این است که با کمتر از ۲۰ سوال، مقدار \( x \) را تشخیص دهیم.
### راهحل با استفاده از جستجوی دودویی:
۱. **شروع کنید:**
- محدوده اعداد را ۱ تا ۱۰۰ در نظر بگیرید.
- سوال بپرسید که آیا \( x \) بزرگتر از مقدار میانه این محدوده است یا نه.
۲. **محاسبه میانه:**
- میانه محدوده برای اولین بار \( \frac{1 + 100}{2} = 50.5 \) است. (میانه را به سمت پایین گرد کنید یعنی ۵۰)
- سوال بپرسید: "آیا عدد شما بزرگتر از ۵۰ است؟"
- با بله یا خیر پاسخ داده میشود و محدوده را به نصف کاهش میدهد.
۳. **تکرار فرآیند:**
- اگر پاسخ بله بود، محدوده جدید میشود [۵۱, ۱۰۰].
- اگر پاسخ خیر بود، محدوده جدید میشود [۱, ۵۰].
- این عمل را تکرار کنید تا محدوده به عدد دقیقاً همان \( x \) برسد.
این روش به شما کمک میکند تا عدد را با پرسیدن حداکثر \(\lceil \log_2(100) \rceil = 7\) سوال پیدا کنید.
با این استراتژی، شما میتوانید به راحتی و با تعداد سوالات کمتر از ۲۰، عدد مورد نظر را پیدا کنید.