I caratteri ASCII stampabili (codici esadecimali da 20 a 7E) in ordine sono:
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
(Nota che lo spazio è lì dentro.)
Questa stringa contiene chiaramente tutti i caratteri ASCII stampabili almeno una volta in ordine crescente quando letti da sinistra a destra, ma non in ordine decrescente.
La stringa
REVERSED:~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! NORMAL: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
contiene tutti i caratteri ASCII stampabili almeno una volta sia in ordine crescente che decrescente. In altre parole, quando i caratteri sono valutati con il loro codice numerico, le sottosequenze crescente e decrescente più lunghe hanno la lunghezza 95 (il numero di caratteri ASCII stampabili).
Sfida
Scegli un sottoinsieme contiguo di N caratteri ASCII stampabili, come LMNOP
(N = 5). Scrivi un programma usando solo quegli N caratteri il cui output contiene tutti i 95 caratteri ASCII in ordine crescente e decrescente come nell'esempio sopra.
Il vincitore è l'invio con il N. più basso. In caso di parità vince il codice più corto in byte.
Gli appunti
- Un sottoinsieme contiguo indica un insieme di ASCII stampabili che compaiono tutti in una linea non interrotta, come
LMNOP
o89:;<=>
. - Il tuo sottoinsieme contiguo può "girare attorno" dallo
~
spazio, ma questo comporta una penalità di +3 su N. Quindi{|}~
ha N = 4, ma{|}~ !
ha N = 6 + 3 = 9. - Il programma può contenere solo N caratteri ASCII stampabili dal sottoinsieme contiguo selezionato. Non devono apparire tutti e possono apparire più volte in qualsiasi ordine. (Non sono consentite tutte le ASCII non stampabili e tutte le non ASCII. Ciò significa che le schede e le nuove righe non sono consentite.)
- L'output può contenere solo caratteri ASCII stampabili e deve contenere meno di 10000 caratteri.
- Le sottosequenze crescente e decrescente più lunghe del tuo output devono avere entrambe la lunghezza 95 (come spiegato sopra).
- Uscita su stdout. Non ci sono input.
- N è un numero intero positivo inferiore a 96.