المپدیا

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

ابزار کاربر

ابزار سایت


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

سوال ۲۲

یک شرکت بشکه‌هایی از چهار ماده‌ی شیمیایی مختلف به‌نام‌های ‎$C$، $‎B$‎،$A$‎ و $D$‎ تولید و در انبارهای خود ذخیره می‌کند. این شرکت ‎۴‎ انبار دارد که در هر انبار ‎۴‎ بشکه از انواع‎$C$، $‎B$‎،$A$‎ و $D$ موجود است (از هر ماده یک بشکه). این مواد شیمیایی در صورتی که با هم مخلوط شوند، خطرناک هستند. به همین دلیل شرکت تصمیم دارد بشکه‌ها را بین این انبارها طوری جابه‌جا کند که در نهایت هر انبار حاوی ‎۴‎ بشکه از یک نوع ماده‌ی شیمیایی باشد. برای این کار از یک کامیون استفاده می‌شود. این کامیون می‌تواند در هر بار جابه‌جایی حداکثر ‎۲‎ بشکه را از یک انبار به یکی دیگر از انبارهای شرکت انتقال دهد. حداقل با چند بار جابه‌جایی می‌توان این کار را انجام داد؟

  1. ۵
  2. ۶
  3. ۷
  4. ۸
  5. ۱۰‎

پاسخ

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

معلوم است که کامیون از انبار ۱ که قرار است از حالت $ABCD$ به حالت $AAAA$ تبدیل شود٬ حداقل دوبار خارج و حداقل دو بار به آن انبار وارد خواهد شد. انبارهای ۳٬۲ و ۴ نیز چنین وضعیتی را دارند. بنابراین حداقل جابه‌جایی‌های لازم برابر $\frac{4+4+4+4}{2}$ یعنی ۸ می‌باشد. اگر کامیون با الگوریتم زیر حرکت کند با ۸ بار جابه‌جایی می‌تواند به هدف برسد:

  1. بشکه‌های $BC$ را از انبار ۱ به انبار ٬۲ منتقل کند.
  2. بشکه‌های $CC$ را از انبار ۲ به انبار ٬۳ منتقل کند.
  3. بشکه‌های $BD$ را از انبار ۳ به انبار ٬۴ منتقل کند.
  4. بشکه‌های $BB$ را از انبار ۴ به انبار ٬۲ منتقل کند.
  5. بشکه‌های $AD$ را از انبار ۲ به انبار ٬۱ منتقل کند.
  6. بشکه‌های $DD$ را از انبار ۱ به انبار ٬۴ منتقل کند.
  7. بشکه‌های $AC$ را از انبار ۴ به انبار ٬۳ منتقل کند.
  8. بشکه‌های $AA$ را از انبار ۳ به انبار ٬۱ منتقل کند.

ابزار صفحه