QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 2048 MB Total points: 100

#7665. الأمتعة

Statistics

لدى شركة طيران رحلتان تغادران ICPCity في وقت متقارب، إحداهما إلى المدينة B والأخرى إلى المدينة A. ولديها أيضًا $n$ منضدة لتسجيل أمتعة المسافرين. عند كل منضدة زوج من حاويات الأمتعة المتماثلة، إحداهما للمدينة B والأخرى للمدينة A.

قبيل الإقلاع، يُنقل كل زوج من الحاويات بعربة آلية إلى منطقة الفرز. تنقل العربة دائمًا حاويتين في المرة الواحدة، إحداهما للمدينة B والأخرى للمدينة A. بعد نقل الجميع، تصطف الحاويات في منطقة الفرز كما يلي:

$$\mathrm{B\ A\ B\ A\ B\ A\ \ldots\ B\ A}$$

أي أن هناك $2n$ حاوية في صف، يبدأ بحاوية للمدينة B ثم واحدة للمدينة A، وهكذا. المطلوب الآن إعادة ترتيبها بحيث تسبق جميع حاويات المدينة A جميع حاويات المدينة B. بعدها يمكن تحميلها على الطائرات المناسبة.

تتم إعادة الترتيب بنقل أزواج من الحاويات المتجاورة (ليس بالضرورة B ثم A)، باستخدام العربة نفسها. وللحفاظ على التوازن، يجب أن تنقل العربة حاويتين دائمًا، لا واحدة فقط. يجب نقل كل زوج إلى مكان فارغ يتسع لحاويتين على الأقل. توجد أماكن فارغة يسار الحاوية الأولى يمكن استخدامها عند الحاجة أثناء إعادة الترتيب.

عند بدء إعادة الترتيب، تُرقم مواقع الحاويات من $1$ (حيث توجد أولًا حاوية B الواقعة أقصى اليسار) إلى $2n$ (حيث توجد أولًا حاوية A الواقعة أقصى اليمين). توجد $2n$ أماكن فارغة في البداية إلى اليسار، مرقمة من $0$ إلى $-2n+1$، كما يوضح الشكل A.1 للحالة $n=4$.

problem_7665_113d453aa04e914f3a265312f8ef181c.png

الشكل A.1: الترتيب الابتدائي للحاويات والأماكن الفارغة عند $n=4$

بمعرفة $n$، أوجد أقصر تسلسل نقل يجعل جميع حاويات A إلى يسار جميع حاويات B. عند النهاية، يمكن أن تكون حاوية A اليسرى في موقع غير $1$، لكن يجب أن تشغل الحاويات تسلسلًا من $2n$ مواقع متجاورة دون فراغات.

الإدخال

يتكون الإدخال من حالة اختبار واحدة تحتوي على العدد الصحيح $n$ ($3 \le n \le 100$).

الإخراج

اعرض أقصر تسلسل نقل يعيد ترتيب الحاويات بصورة صحيحة. كل نقلة بالشكل «$f$ to $t$»، حيث يمثل العددان الصحيحان $f$ و$t$ نقل الحاويتين من الموقعين $f$ و$f+1$ إلى الموقعين $t$ و$t+1$. إذا وُجدت حلول متعددة، فاعرض أيًا منها.

أمثلة

الإدخال 1

5

الإخراج 1

8 to -1
3 to 8
6 to 3
0 to 6
9 to 0

الإدخال 2

8

الإخراج 2

10 to -1
3 to 10
14 to 3
7 to 14
0 to 7
11 to 0
4 to 11
15 to 4

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.