در شهری کوچک زلزلهای آمده و حوادث کوچک و
بزرگی در نقاط مختلف شهر رخ داده است. در این شهر نیروهای امدادی مختلفی سرگرم
امدادرسانیاند، اما کمبود امکانات به وضوح احساس میشود؛ مثلاً سازمان آتشنشانی
شهر یک گروه آتشنشان بیشتر ندارد. در این شرایط استفادهی بهینه از امکانات
موجود کاملاً ضروری است.
فرض کنید فرمانده آتشنشانی شهر از شما درخواست
کمک کرده تا برنامهای بنویسید که او بتواند تنها گروه آتشنشان خود را برای امداد
و نجات حوادث بیشتری اعزام کند. او فهرستی از محل دقیق حوادث، حداکثر فرصتی که
برای رسیدن به محل آن حادثه وجود دارد، و نیز زمان لازم برای نجات حادثهدیدگان،
در اختیار دارد که آن را به شما میدهد، و از شما میخواهد برنامهای بنویسید که
تنها گروه آتشنشان شهر بتواند به حادثههای هرچه بیشتری رسیدگی کند.
شهر را
در قالب یک جدول 100×100 مدل کردهایم، و برای سادگی کار شما فرض کردهایم که هیچ
مانعی بر سر راه گروه آتشنشان نیست. نقاط حادثه، حداکثر فرصت رسیدگی به آنها، و
زمان لازم برای نجات حادثهدیدگان در قالب تعدادی رشته به برنامهی شما ورودی داده
میشود. همچنین تعداد ثانیههایی هم که در کل برای امدادرسانی گروه آتشنشان در
نظر گرفته شده ورودیِ دیگر برنامهی شماست. شما باید از این زمان به بهترین نحو
استفاده کنید، به این معنا که به بیشترین تعداد حادثه به شکل موفق رسیدگی کنید.
# ورودی
ابتدا عدد طبیعی $t$ کل زمانِ
در اختیار بر حسب ثانیه میآید. سپس عدد طبیعی $n$ که نشاندهندهی تعداد کل حادثههاست، و بعد $n$ رشته به صورت زیر خواهد آمد:
$$x,y-tr-tn$$
که در آن $x,y$ مختصات
محل حادثه (خانهی گوشهی بالا-چپ جدول، مختصات $0,0$ دارد و خانهی گوشهی
پایین-راست جدول، مختصات $99,99$)، $tr$ حداکثر
فرصت گروه آتشنشان برای رسیدن به محل حادثه، و $tn$ زمان لازم برای نجات حادثهدیدگان پس از رسیدن به محل حادثه است. $tr$ از لحظهی صفر، یعنی زمان شروع حرکت گروه آتشنشان محاسبه شده است.
مبدأ حرکت گروه آتشنشان خانهی $0,0$ است.
# خروجی
گروه آتشنشان در هر ثانیه میتواند تنها یک خانه به
راست، چپ، بالا، یا پایین برود یا در جای خود بماند (که ماندن در جای خود مربوط به
زمان نجات حادثهدیدگان است). برای نشان دادن هر کدام از این حرکات به ترتیب باید R، C، B، P، یا - (خط تیره) را در خروجی چاپ
کنید. بنابراین برنامهی شما باید در $t$ خط، در
هر خط یکی از این 5 کاراکتر را چاپ کند.
## معیار داوری
از آنجا که جواب مشخصی برای این مسأله وجود
ندارد، معیار داوری بیشترین تعداد حوادثی است که در زمان $t$ توانستهاید با
موفقیت به آنها رسیدگی کنید. برای رسیدگی موفق به حادثه اولاً لازم است پیش از
زمان $tr$ به
آن برسید، و ثانیاً به اندازهی $tn$ (به صورت پیوسته) برای نجات حادثهدیدگان آن وقت
بگذارید.
در شرایطی که برنامهی دو گروه مسابقهدهنده به
تعداد مساوی حادثه رسیدگی کند، برنامهای که زمان کمتری صرف کرده باشد امتیاز بیشتری
خواهد داشت.
توجه: به علت ماهیت مسأله، امکان داوری فوری
برای آن وجود ندارد و کوئرا تنها نبود خطای نگارشی را گزارش میکند. بنابراین
خودتان تا جایی که میتوانید برنامه را آزمایش کنید.
نتایج
ارسالهای هر روز، در روز بعد اعلام خواهد شد.
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.