ترتيب حسب الزوجية والقيمة
Java
Medium
sorting
مهمة «ترتيب حسب الزوجية والقيمة»
```html
<p>لديك مصفوفة من الأعداد الصحيحة. يجب ترتيبها بحيث تأتي أولاً جميع الأعداد الزوجية بترتيب تصاعدي، ثم جميع الأعداد الفردية بترتيب تنازلي. إذا كان العدد يساوي 0، فإنه يُعتبر عدداً زوجياً. قم بتنفيذ الترتيب دون استخدام دوال الترتيب المضمنة، باستخدام خوارزمية ترتيب الدمج (merge sort). بالإضافة إلى ذلك، بعد الترتيب، قم بإخراج عدد التبديلات التي تم إجراؤها أثناء الترتيب (أي عدد مرات تبادل العناصر).</p>
```
<p>لديك مصفوفة من الأعداد الصحيحة. يجب ترتيبها بحيث تأتي أولاً جميع الأعداد الزوجية بترتيب تصاعدي، ثم جميع الأعداد الفردية بترتيب تنازلي. إذا كان العدد يساوي 0، فإنه يُعتبر عدداً زوجياً. قم بتنفيذ الترتيب دون استخدام دوال الترتيب المضمنة، باستخدام خوارزمية ترتيب الدمج (merge sort). بالإضافة إلى ذلك، بعد الترتيب، قم بإخراج عدد التبديلات التي تم إجراؤها أثناء الترتيب (أي عدد مرات تبادل العناصر).</p>
```
تنسيق الإدخال
السطر الأول يحتوي على عدد صحيح N (1 ≤ N ≤ 1000) — عدد العناصر في المصفوفة. السطر الثاني يحتوي على N أعداد صحيحة، مفصولة بمسافات — عناصر المصفوفة.
تنسيق الإخراج
أخرج المصفوفة المرتبة في سطر واحد مع فصل العناصر بمسافات. ثم في السطر التالي، أخرج عددًا صحيحًا واحدًا — عدد عمليات التبادل التي تمت.
أمثلة
مثال 1
الإدخال
4
0 7 2 9
الإخراج
0 2 9 7
2
مثال 2
الإدخال
6
6 5 4 3 2 1
الإخراج
2 4 6 5 3 1
5
main.java