Die druckbaren ASCII-Zeichen (Hex-Codes 20 bis 7E) lauten in der Reihenfolge:
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
(Beachten Sie, dass dort Platz ist.)
Diese Zeichenfolge enthält alle druckbaren ASCII-Zeichen mindestens einmal in aufsteigender Reihenfolge, wenn sie von links nach rechts gelesen werden, jedoch nicht in absteigender Reihenfolge.
Die Saite
REVERSED:~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! NORMAL: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
enthält alle druckbaren ASCII-Zeichen mindestens einmal in aufsteigender und absteigender Reihenfolge. Mit anderen Worten, wenn die Zeichen mit ihrem numerischen Code bewertet werden, haben die am längsten zunehmenden und am längsten abnehmenden Teilsequenzen eine Länge von 95 (die Anzahl der druckbaren ASCII-Zeichen).
Herausforderung
Wählen Sie eine zusammenhängende Teilmenge von N druckbaren ASCII-Zeichen aus, z. B. LMNOP
(N = 5). Schreiben Sie ein Programm, indem Sie nur die N Zeichen verwenden, deren Ausgabe alle 95 ASCII-Zeichen in aufsteigender und absteigender Reihenfolge enthält, wie im obigen Beispiel.
Der Gewinner ist die Einsendung mit dem niedrigsten N. Bei Gleichstand gewinnt der kürzeste Code in Bytes.
Anmerkungen
- Eine zusammenhängende Teilmenge ist eine Menge der druckbaren ASCII-Zeichen, die alle in einer durchgehenden Linie angezeigt werden, z. B.
LMNOP
oder89:;<=>
. - Ihre zusammenhängende Untergruppe kann von
~
einem Punkt zum anderen "schleifen" , dies führt jedoch zu einer Strafe von +3 für N. Also{|}~
hat N = 4, aber{|}~ !
N = 6 + 3 = 9. - Ihr Programm enthält möglicherweise nur die N druckbaren ASCII-Zeichen aus der von Ihnen ausgewählten zusammenhängenden Teilmenge. Sie müssen nicht alle erscheinen und können in beliebiger Reihenfolge mehrmals auftreten. (Alle nicht druckbaren ASCII-Zeichen und alle nicht ASCII-Zeichen sind nicht zulässig. Dies bedeutet, dass Tabulatoren und Zeilenumbrüche nicht zulässig sind.)
- Ihre Ausgabe darf nur druckbare ASCII-Zeichen enthalten und darf nicht länger als 10000 Zeichen sein.
- Die längsten ansteigenden und absteigenden Teilfolgen Ihrer Ausgabe müssen beide die Länge 95 haben (wie oben erläutert).
- Ausgabe auf Standardausgabe. Es erfolgt keine Eingabe.
- N ist eine positive ganze Zahl kleiner als 96.