فهرست مندرجات

بازی با نوار

یک نوار دایره‌ای شکل به طول $n$‌ داریم که در دو خانه‌ی آن مهره قرار داده‌ایم. هدف ما در این بازی این است که با کم‌ترین تعداد حرکت کاری کنیم که این دو مهره در یک خانه قرار گیرند.

در هر نوبت می‌توانیم هر مهره را که خواستیم حرکت بدهیم. قواعد حرکت برای مهره‌ی اول به شکل زیر هستند:

حرکت مهره‌ی دوم هم به همین صورت است. توجه کنید که هر مهره، شمارنده و «اعداد حرکت» مخصوص خودش دارد. وقتی یک مهره را حرکت می‌دهیم، فقط شمارنده‌ی آن مهره تغییر می‌کند و از همان شمارنده برای تعیین اندازه حرکت استفاده می‌کنیم.

ورودی

در خط اول فایل ورودی اعداد $x،k،n$ و $y$ نوشته شده‌اند. $x$ و $y$ به ترتیب مکان‌های اولیه‌ی مهره‌ی اول و مهره‌ی دوم هستند. توجه کنید که $x \neq y$. در خط بعد، $a_1$ تا $a_k$ به ترتیب نوشته شده‌اند که «اعداد حرکت» برای مهره‌ی اول هستند. در خط سوم هم به همین صورت، اعداد $b_1$ تا $b_k$ آمده‌اند که «اعداد حرکت» برای مهره‌ی دوم هستند.($n$ و $k$ به ترتیب از ۱۰۰۰ و ۵۰۰ بیش‌تر نیستند.)

خروجی

در این فایل، ابتدا کم‌ترین تعداد حرکت را بنویسید. سپس حرکت‌ها را به ترتیب از اول به آخر بنویسید. برای هر حرکت، ابتدا شماره‌ی مهره‌ای را که حرکت می‌کنید را بنویسید( ۱ برا مهره‌ی اول و ۲ برای مهره‌ی دوم). سپس شماره‌ی خانه‌ی این مهره پس از حرکت را بنویسید.

اگر بیش از یک راه‌حل وجد داشته باشد، یک راه‌حل بنویسید. اگر هیچ راه‌حلی وجود نداشته باشد، در فایل خروجی تنها عدد ۰ را بنویسید.

محدودیت‌ها

ورودی و خروجی نمونه

ورودی نمونه خروجی نمونه
8 3 3 6
2 3 1
6 4 8
2
1 1
1 6