Sortierung nach Parität und Wert

Java Medium sorting

Aufgabe «Sortierung nach Parität und Wert»

Gegeben ist ein Array von ganzen Zahlen. Es muss so sortiert werden, dass zuerst alle geraden Zahlen in aufsteigender Reihenfolge und dann alle ungeraden Zahlen in absteigender Reihenfolge erscheinen. Wenn eine Zahl gleich 0 ist, gilt sie als gerade. Implementieren Sie die Sortierung ohne Verwendung integrierter Sortiermethoden, indem Sie den Merge-Sort-Algorithmus verwenden. Geben Sie zusätzlich nach der Sortierung die Anzahl der während der Sortierung durchgeführten Vertauschungen aus (d. h. die Anzahl der Elementvertauschungen).

Eingabeformat

Die erste Zeile enthält eine ganze Zahl N (1 ≤ N ≤ 1000) — die Anzahl der Elemente im Array. Die zweite Zeile enthält N durch Leerzeichen getrennte ganze Zahlen — die Elemente des Arrays.

Ausgabeformat

Geben Sie das sortierte Array in einer Zeile durch Leerzeichen getrennt aus. Geben Sie dann in der nächsten Zeile eine ganze Zahl aus — die Anzahl der durchgeführten Vertauschungen.

Beispiele

Beispiel 1

EINGABE
4 0 7 2 9
AUSGABE
0 2 9 7 2

Beispiel 2

EINGABE
6 6 5 4 3 2 1
AUSGABE
2 4 6 5 3 1 5
main.java