Entfernen von Duplikaten aus einem sortierten Array mit Begrenzung der Wiederholungsanzahl
C++
Medium
arrays
Aufgabe «Entfernen von Duplikaten aus einem sortierten Array mit Begrenzung der Wiederholungsanzahl»
Es ist ein nach nicht absteigender Reihenfolge sortiertes Integer-Array gegeben. Es müssen Duplikate so entfernt werden, dass jedes Element maximal zweimal vorkommt, und die Länge des neuen Arrays zurückgegeben werden. Die restlichen Elemente des Arrays nach dieser Länge sind unwichtig. Die Lösung muss ohne Verwendung von zusätzlichem Speicher (in-place) erfolgen.
Eingabeformat
Die erste Zeile enthält eine ganze Zahl N (1 ≤ N ≤ 10^5) — die Anzahl der Elemente im Array. Die zweite Zeile enthält N durch Leerzeichen getrennte ganze Zahlen — die Elemente des Arrays, sortiert nach nicht absteigender Reihenfolge.
Ausgabeformat
Eine ganze Zahl — die Länge des Arrays nach dem Entfernen der Duplikate (die Anzahl der Elemente, die maximal zweimal vorkommen).
Beispiele
Beispiel 1
EINGABE
1
5
AUSGABE
1
Beispiel 2
EINGABE
5
1 2 3 4 5
7
AUSGABE
5
Beispiel 3
EINGABE
6
1 1 1 2 2 3
AUSGABE
5
main.cpp