سوال سوم (۴۸ نمره)

درخت ۱۴۰۳ رأسی $T$ را در نظر بگیرید که درجه‌ی هر رأس در آن، حداکثر ۳ است. البرز و بیتا می‌خواهند روی این درخت، یک بازی انجام دهند، به این صورت که البرز یکی از رأس‌های درخت $T$ به نام $u$ را مخفیانه انتخاب می‌کند و بیتا باید این رأس را پیدا کند. در این بازی، بیتا می‌تواند تنها یک پرسش از البرز انجام دهد، به این شکل که دنباله‌ای از رأس‌ها مانند $\langle v_1, v_2, \dots, v_k \rangle$ را انتخاب کند و به‌صورت یک‌جا به البرز بدهد. البرز نیز در پاسخ به او، اطلاعاتی را در قالب $k$ جمله به شکل زیر ارائه می‌دهد:

جملات البرز
فاصله بین $u$ و $v_1$ برابر $d_1$ است.
فاصله بین $u$ و $v_2$ برابر $d_2$ است.
$\vdots$
فاصله بین $u$ و $v_k$ برابر $d_k$ است.

لازم به یادآوری است که فاصله بین دو رأس در یک گراف، تعداد یال‌های کوتاه‌ترین مسیر میان آن دو رأس است. همچنین، توجه نمایید که تنها چیزی که بیتا نمی‌داند، رأس $u$ است، و او نیز مانند البرز، از ساختار درخت $T$ اطلاع کامل دارد. بر همین اساس، بیتا برای طراحی پرسش خود از البرز، الگوریتم زیر را ابداع کرده است:

  1. درخت $T$ را از یکی از برگ‌هایش (یکی از رأس‌های با درجه‌ی یک) که آن را ریشه می‌نامیم، آویزان می‌کنیم.
  1. رأس ریشه را رنگ می‌کنیم.
  2. تمامی رأس‌های دوشاخه‌ی ساده در درختِ آویزان‌شده را پیدا می‌کنیم.
  3. به‌ازای هر رأس دوشاخه‌ی ساده، دقیقاً یکی از دو فرزندش را به دل‌خواه، انتخاب و آن را رنگ می‌کنیم.
  4. رأس‌های رنگ‌شده را به عنوان پرسش $\langle v_1, v_2, \dots, v_k \rangle$ به البرز می‌دهیم.

به عنوان مثال، شکل زیر درختی ۷ رأسی را نشان می‌دهد که از رأس ۱ آویزان شده است. با این شرایط، رأس‌های ۲ و ۳ (که با دو دایره مشخص شده‌اند)، رأس‌هایی دوشاخه هستند. رأس ۳ یک رأس دوشاخه‌ی ساده است، چرا که به‌جز خودش، هیچ یک از رأس‌هایی که جدشان است (رأس‌های ۵، ۶ و ۷)، دوشاخه نیستند؛ ولی رأس ۲ یک رأس دوشاخه‌ی ساده نیست، چون جدّ رأس دوشاخه‌ی ۳ است. بنابراین، خروجی الگوریتم بیتا در این مثال، یکی از دنباله‌های $\langle 1, 5 \rangle$ یا $\langle 1, 6 \rangle$ خواهد بود و در نتیجه، دنباله‌ی خروجی الگوریتم بیتا در این مثال دقیقاً ۲ رأس خواهد داشت.