سلام دوست عزیز😃👋

لینک‌های مفید برای شرکت در مسابقه

موفق باشید 😉✌

کارخانه


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت
  • آزمون عملی سوم فاینال سی و دومین دوره المپیاد کامپیوتر ایران

سیستم داوری این سوال در کوئرا مشکل داره!🔗

در یک کارخانه جعبه‌سازی تعدادی جعبه روی هم قرار داده شده‌اند. جعبه‌ها در تعدادی ستون روی یکدیگر هستند. aia_i جعبه در ستون ii ام روی هم قرار گرفته‌اند. رئیس کارخانه به تازگی یک ماشین چرخش تهیه کرده که می‌تواند عملیات زیر را انجام دهد:

  • بازه دلخواه [l,r)[l, r) را انتخاب می‌کند، یک مستطیل که طول [l,r)[l, r) و ارتفاع [0,max(al,al+1,,ar1))[0, \max(a_l, a_{l+1}, \cdots, a_{r-1})) می‌کشد و مستطیل را ۹۰ درجه پادساعتگرد می‌چرخاند، سپس فضای خالی زیر جعبه‌ها توسط جاذبه پر می‌شود.
مثال چرخش
چرخش بازه [1,4)[1, 4) . ستون‌ها از 00 شماره‌گذاری می‌شوند.

رئیس کارخانه به دنبال این است که تمامی ستون‌ها حداکثر شامل یک جعبه باشند. او می‌خواهد مهندسی استخدام کند تا با استفاده از ماشین چرخش او را به هدفش برساند. ماشین چرخش پر هزینه است و رئیس شرکت می‌خواهد با تعداد کمی عملیات او را به خواسته‌اش برسانید. در قسمت زیرمسئله‌ها در مورد نحوه نمره‌دهی بخوانید.

رئیس کارخانه ستون‌ها را به صورت یک رشته دودویی دراورده است به طوری که هر ستون تعدادی 00 متوالی در رشته است که با 11 از یکدیگر جدا می‌شوند و خود ۱ نیز در آن حساب می‌شود. به طور مثال در شکل ۱ که دنباله ستون‌ها 3,4,2,5,6,5\langle 3, 4, 2, 5, 6, 5 \rangle می‌باشد، رشته آن برابر 00100010100001000001000010010001010000100000100001 می‌باشد. تضمین می‌شود که آخرین حرف این رشته حتما 11 است.

ورودی🔗

در خط اول ورودی سه عدد طبیعی nn طول رشته، mm تعداد تعداد ستون‌ها و kk شماره زیرمسئله به‌ترتیب می‌آیند. 1n,m40000001 \leq n, m \leq 4 \, 000 \, 000 1k41 \leq k \leq 4

خروجی🔗

ابتدا تعداد عملیات‌هایی که انجام می‌دهید را چاپ کنید. سپس به‌ترتیب در هر خط بازه‌ای که آن را می‌چرخانید را به صورت ll و rr چاپ کنید که یعنی بازه [l,r)[l, r) با شماره‌گذاری‌های جدید را می‌چرخانید.

زیرمسئله‌ها🔗

توجه کنید که به دلیل محدودیت‌های فعلی امکان نمره دهی جزئی وجود ندارد و مانند سوال های دیگر برای گرفتن نمره‌ی یک زیرمسئله باید آن را کامل حل کرده باشید و حتی اگر طبق امتیاز دهی گفته شده باید قسمتی از نمره یک زیرمسئله را می‌گرفتید برای شما ۰ حساب می‌شود.🔗

زیرمسئله نمره محدودیت
۱ ۵ n103n \leq 10^3، حداکثر 500500 عملیات می‌توانید انجام دهید.
۲ ۲۵ n105n \leq 10^5، حداکثر 650650 عملیات می‌توانید داشته باشید و اکر xx عملیات داشته باشید، نمره شما از این زیرمسئله min(25,20+5×650x330)min(25, 20 + 5 \times \frac{650 - x}{330}) خواهد بود.
۳ ۲۵ n5×105n \leq 5 \times 10^5، حداکثر 8585 عملیات می‌توانید انجام دهید.
۴ ۴۵ n4×106n \leq 4 \times 10^6 و حداکثر 140140 عملیات می‌توانید انجام دهید. اگر تعداد عملیات‌های شما xx و 100x140100 \leq x \leq 140 باشد، در صورت x=140x = 140 1010 نمره می‌گیرید و x=100x=100 2020 نمره و هر مقدار بین این دو به صورت خطی نمره افزایش می‌یابد. اگر 70<x10070 < x \leq 100 2020 نمره می‌گیرید. در صورت 30x7030 \leq x \leq 70 نیز به صورت خطی بین 3030 تا 4545 نمره دریافت می‌کنید. در صورت x30x \leq 30 نیز کل نمره را دریافت خواهید کرد.

مثال🔗

ورودی نمونه ۱🔗

15 6 1
100011001001001
Plain text

خروجی نمونه ۱🔗

6
0 6
1 4
0 7
2 3
1 2
0 1
Plain text
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.