Bei einer unsortierten Liste eindeutiger, positiver Ganzzahlen geben Sie die kürzeste Liste der längsten Bereiche sequentieller Ganzzahlen aus.
EINGANG
- Eine unsortierte Liste eindeutiger positiver Ganzzahlen
- z.B
9 13 3 11 8 4 10 15
- z.B
- Die Eingabe kann aus einer der folgenden Quellen erfolgen:
stdin- Kommandozeilenargumente
- Funktionsargumente
AUSGABE
- Eine geordnete Liste von Bereichen oder einzelnen Werten, die in einer Zeile auf stdout oder die ähnlichste Ausgabe Ihrer Sprache gedruckt sind.
- Wenn zwei oder mehr sequentielle Ganzzahlen (sequentiell nach Wert, nicht nach Ort in der Liste) vorhanden sind, werden sie mit - als einschließender Bereich bezeichnet, z
8-11 - Alle anderen Ganzzahlen werden einfach ohne andere Notation gedruckt
- Ein einzelnes Leerzeichen begrenzt die Ausgabe
- Wenn zwei oder mehr sequentielle Ganzzahlen (sequentiell nach Wert, nicht nach Ort in der Liste) vorhanden sind, werden sie mit - als einschließender Bereich bezeichnet, z
- Zahlen, die nicht in der Eingabe vorhanden sind, sollten nicht in der Ausgabe enthalten sein, z. B.
3 5 6können sie nicht auf abgekürzt werden,3-6da sie4nicht vorhanden sind
Beispiele
Erfolgreich:
IN> 9 13 3 11 8 4 10 15 6
OUT> 3-4 6 8-11 13 15
IN> 11 10 6 9 13 8 3 4 15
OUT> 3-4 6 8-11 13 15
IN> 5 8 3 2 6 4 7 1
OUT> 1-8
IN> 5 3 7 1 9
OUT> 1 3 5 7 9
Falsch:
IN> 9 13 3 11 8 4 10 15
OUT> 3-15
Bereich enthält Werte, die nicht in der Eingabe enthalten sind
IN> 9 13 3 11 8 4 10 15
OUT> 3 4 8 9 10 11 13 15
Alle sequentiellen Werte sollten als Bereich dargestellt werden
IN> 9 13 3 11 8 4 10 15
OUT> 3-4 8-9 10-11 13 15
Geteilter Bereich, 8-9und 10-11sollte sein8-11
IN> 9 13 3 11 8 4 10 15
OUT> 8-9 13 10-11 3-4 15
Ausgabe nicht korrekt bestellt
REGELN
- Standardlücken sind nicht zulässig
- Wenn Ihre Sprache eine Funktion hat, ist dies nicht zulässig
- Sie können ein vollständiges Programm oder eine Funktion schreiben
- Das nachgestellte Leerzeichen spielt keine Rolle
WERTUNG
- Wenigste Bytes gewinnt