Loading [MathJax]/jax/output/HTML-CSS/jax.js

المپدیا

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

ابزار کاربر

ابزار سایت


سوالات المپیاد:دوره ی تابستان:دوره ی ۱۲:تئوری:سوال ۲

کارمند تنبل

n کار داریم که کار iام در زمان ai می‌رسد و زمان انجام آن ti است. کارمند تنبل می‌خواهد تعدادی از این کارها را با رعایت شرایط زیر انجام دهد:

  1. کارمند در هر لحظه می‌تواند حداکثر یک کار را انجام دهد.
  2. اگر انجام کار iام در زمان T شروع شود تا زمان T+ti طول می‌کشد.
  3. انجام کار iام نباید قبل از زمان ai شروع شود.
  4. هر کاری که کارمند برای انجام دادن انتخاب می‌کند باید حداکثر تا زمان D پایان یابد.
  5. هر گاه کاری برای انجام دادن وجود دارد(که اگر شروع شود حداکثر تا زمان D پایان می‌یابد) کارمند نمی‌تواند بی‌کار بماند و باید از میان کارهای موجود یکی را انتخاب کند و انجام دهد.

فرض کنید تمام اعداد صحیح هستند و برای هر i داریم ai+tiD.

کارمند تنبل است و می‌خواهد زود محل کار خود را ترک کند. اما تنها در صورتی می‌تواند این کار را انجام دهد که کاری برای انجام دادن نداشته باشد و در آینده نیز هیچ کاری قابل انجام دادن نشود.

هدف تعیین ترتیب انجام کارهاست به صورتی که در حداقل زمان ممکن دیگر کاری برای انجام دادن نماند.

پاسخ


ابزار صفحه