المپدیا

دانش‌نامه‌ی المپیاد کامپیوتر ایران

ابزار کاربر

ابزار سایت


سوالات المپیاد:مرحله‌ی اول:دوره‌ی ۲۰:سوال ۱۲

سوال ۱۲

در یک زمستان سرد٬ خرس قطبی ۸۸ قطعه گوشت دقیقا به اندازه‌‌های ٬۲٬۱ تا ۸۸ را در غاری ذخیره کرده است. او هر روز یکی از این قطعه گوشت‌ها را به صورت تصادفی (و با احتمال برابر) انتخاب می‌کند. اگر اندازه‌ی گوشت عدد فردی بود٬‌ آن را کاملاً می‌خورد. اگر زوج بود٬ آن را دقیقاً نصف می‌کند٬ یک نصف آن را می‌خورد و نصف دیگر را مجدداً در غار قرار می‌دهد. اگر گوشتی موجود نباشد٬ خرس می‌میرد. با این الگوریتم٬ خرس ما چند روز می‌تواند زنده بماند؟

  1. ۸۵ روز
  2. ۸۷ روز
  3. ۸۸ روز
  4. ۱۷۳ روز
  5. ۱۷۵ روز

پاسخ

گزینه (۴) درست است.

مستقل از ترتیب انتخاب گوشت‌ها با تکه گوشت اولیه‌ای که بزرگ‌ترین توان ۲اش $K$ باشد$K+1$ روز زنده می‌ماند. پس ترتیب خورده‌شدن گوشت‌ها هیچ تاثیری در تعداد روزهای زنده ماندن خرس ندارد.

شمارش را این‌گونه انجام می‌دهیم: ۸۸ تکه گوشت اولیه داریم، به علاوه‌ی$⌊\frac{88}{2}⌋$ که تعداد گوشت‌های مضرب ۲ هستند که نصف آن‌ها در ابتدا خورده و نصف آن‌ها باقی‌مانده، به علاوه‌ی $⌊\frac{88}{4}⌋$ که تعداد گوشت‌های مضرب ۴ هستند که دوبار نصف شده‌اند و هنوز باقی‌مانده‌اند و به همین ترتیب تا تمامی گوشت‌ها تمام شوند که در نهایت برابر است با:

$$88+44+22+11+5+2+1=173$$


ابزار صفحه