Problem

1 /5


فرز عربة

Problem

مطلوب لتحديد ما إذا كان يمكن فرز تسلسل من الأرقام باستخدام مكدس.

وصل قطار إلى الطريق المسدودة من المسار 1 (انظر الصورة). يُسمح بفك واحدة أو عدة سيارات من القطار في وقت واحد وإحضارها إلى طريق مسدود (إذا كنت ترغب في ذلك ، يمكنك حتى إحضار القطار بأكمله إلى طريق مسدود مرة واحدة). بعد ذلك ، اصطحب بعض العربات إلى جانب المسار 2. ثم يمكنك إحضار عدد قليل من العربات إلى الطريق المسدود ، ومرة ​​أخرى نقل جزءًا من العربات إلى جانب المسار 2. وهكذا ، حتى يتسنى لكل عربة يقود من المسار 1 إلى الطريق المسدود مرة واحدة فقط ، ثم يغادر الطريق المسدود مرة واحدة على المسار 2. يحظر الدخول إلى طريق مسدود من المسار 2 أو ترك طريق مسدود على المسار 1. لا يمكنك الانتقال من المسار 1 إلى المسار 2 دون الدخول في طريق مسدود.

من المعروف في أي ترتيب تذهب عربات القطار في البداية. من الضروري ، باستخدام العمليات المشار إليها ، جعل عربات القطار تسير بالترتيب (الأول الأول ، ثم الثاني ، وما إلى ذلك ، بدءًا من رأس القطار الذي يسافر على طول المسار 2 بعيدًا عن طريق مسدود). اكتب برنامجًا لتحديد ما إذا كان يمكن القيام به.
& nbsp؛
إدخال
أدخل الرقم N & [مدش]؛ عدد السيارات في القطار ( \ (1 & lt؛ = N & lt؛ = 2000 \) ). فيما يلي أرقام السيارات بالترتيب من رأس القطار الذي يسافر على المسار 1 باتجاه الطريق المسدود. السيارات مرقمة بأرقام طبيعية من 1 إلى N ، كل منها يحدث مرة واحدة بالضبط.
& nbsp؛
الإخراج
هل من الممكن جعل السيارات تنتقل بالترتيب من 1 إلى N ، بدءًا من رأس القطار ، عندما يسير القطار في المسار الثاني من طريق مسدود؟ & nbsp؛ إن أمكن ، اعرض رسالة نعم . & nbsp؛ إذا لم يكن ذلك ممكنًا ، اطبع NO .
نبسب ؛
نبسب ؛
أمثلة <الجسم>
# إدخال الإخراج ملاحظة
1 3
3 2 1
نعم نحتاج إلى نقل القطار بأكمله إلى طريق مسدود ، ثم نقله بالكامل إلى المسار الثاني
2
4
4 1 3 2
نعم
أولاً ، تحتاج إلى إحضار عربتين إلى طريق مسدود ، سيتم ترك إحداها في طريق مسدود ، والثانية & [مدش] ؛ انطلق إلى المسار الثاني ، ثم أحضر سيارتين أخريين إلى طريق مسدود وأخرج 3 سيارات تقف في طريق مسدود إلى المسار الثاني
3 3
2 3 1
لا & nbsp؛