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

برای تست کردن برنامه‌هایتان نیازی به استفاده از کامپایلرهای جدید نیست و می‌توانید با ثبت‌نام رایگان در این‌جا، از ویرایشگر سمت چپ این تمرین برای اجرای کدهایتان استفاده کنید.

در صورت بروز مشکل آن را از طریق قسمت "سوال بپرسید" مطرح کنید.

سری سوم سوالات اضافه شد؛ جوایز بعد از کشف تقلب در بلاگ اعلام می‌شود.

پشتیبانی مسابقه از ساعت ۱۶ الی ۱۹ و ۱۱ الی ۱۴ هر روز است.

جوراب‌ها - Perl/Swift


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

رادزینکا بچه‌ای شلخته و نامنظم است که اتاقش شبیه شهر ارواح است!

در یکی از روزهای مه‌آلود بهاری، مادر رادزینکا خواست تا اتاق او را جاروبرقی بکشید که ناگهان با انبوه لنگه جوراب‌های پخش و پلای او روبرو شد. مادر که به خشم آمده بود، شروع به جفت‌ کردن جوراب‌های هم‌رنگ کرد و تصمیم گرفت هر جورابی که اضافه آمد را دور بریزد و جوراب‌های جفت‌ شده‌ را در کمد قرار دهد، بلکه اتاق اندکی خلوت شود.

از آن‌جایی که جوراب‌های رادزینکا ورزشی است، بر روی هر لنگه یک عدد نوشته شده است.جوراب‌ها به ترتیب با شماره‌های ۱ تا nn شماره‌گذاری شده‌اند.

مادر رادزینکا دوست دارد به نحوی جوراب‌ها را جفت کند که چهار شرط زیر (به همین ترتیب اولویت) رعایت شود:

  • دو لنگه‌ای که با هم جفت می‌شوند، رنگ یکسانی داشته باشند.
  • تعداد جوراب‌های جفت شده بیشینه شود تا کمترین تعداد جوراب دور ریخته شود.
  • اگر قرار است kk جفت انتخاب کند، آن‌ kk جفت را به گونه‌ای انتخاب کند که جمع اعداد موجود بر روی جوراب‌ها کمینه شود (مادر رادزینکا از اعداد بزرگ خوشش نمی‌آید).
  • در جفت کردن ایده‌آل مادر رادزینکا، با رعایت کامل سه شرط بالا، تلاش می‌شود شماره جوراب‌های جفت شده تا حد امکان به هم نزدیک‌تر باشند. به عبارت دیگر، مجموع اختلاف اعداد جوراب‌های جفت شده کمینه شود (رادزینکا از اختلاف زیاد اعداد جوراب‌هایش ناراحت می‌شود)

از آن‌جایی که مادر رادزینکا مشغول تمیز کردن خانه است،‌ زمان کافی برای جفت کردن جوراب‌ها با شرایط دلخواهش را ندارد. به او کمک کنید تا این کار را انجام دهد.

ورودی🔗

در خط اول ورودی عدد nn آمده است که نشان‌دهنده تعداد لنگه جوراب‌های موجود در اتاق رادزینکا است. در خط دوم nn عدد آمده است که ii امین عدد نشان‌دهنده رنگ‌ جورابی است که بر روی آن عدد ii نوشته شده است.

1n2001 \le n \le 200

رنگ جوراب‌ها عددی بین ۱ تا ۱۰۰ است.

خروجی🔗

در اولین خط خروجی عدد kk را خروجی دهید که نشان‌دهنده بیشینه تعداد جفت‌هاست.

در iiامین خط از kk خط بعدی به ترتیب دو عدد aa و bb را خروجی دهید که نشان‌دهنده اعداد جوراب‌هایی است که مادر رادزینکا در مرحله iiام جفت می‌کند. دقت کنید که aa کوچکتر از bb باشد.

همچنین به‌خاطر وسواس مادر رادزینکا در برقراری نظم و ترتیب، جفت‌ها را طوری خروجی دهید که بر اساس عدد کوچکتر، مرتب شده باشند. یعنی اگر جفت xx قبل از جفت yy ظاهر شده است، جورابی که در بین چهار لنگه این دو جفت شماره کمینه را دارد، در جفت xx باشد.

مثال🔗

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

5
1 2 1 2 3
Plain text

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

2
1 3
2 4
Plain text

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

8
1 4 1 1 4 1 4 1
Plain text

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

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