introduzione
Una tabella codici associa valori interi a un carattere specifico. Possiamo visualizzare una tabella codici come questa:
+ --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + - - + --- + --- + --- + --- + | | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + - - + --- + --- + --- + --- + | 0 | q | w | e | r | t | z | u | io | o | p | a | s | d | f | g | j | + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + - - + --- + --- + --- + --- + | 1 | k | l | y | x | c | v | b | n | m | Q | W | E | R | T | Z | U | + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + - - + --- + --- + --- + --- + | 2 | Io | O | P | A | S | D | F | G | H | J | | | | | | | + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + --- + - - + --- + --- + --- + --- +
Le righe specificano la prima cifra e le colonne la seconda cifra del numero esadecimale.
La sfida
Data una stringa di 16-255 caratteri univoci, genera la tabella codici corrispondente utilizzando l'indice in base zero di ciascun carattere della stringa come valore. L'input, qwertzuiopasdfghjklyxcvbnmQWERTZUIOPASDFGHJad esempio, produrrebbe la tabella sopra.
- L'output deve essere nello stesso identico formato della tabella sopra. Solo una nuova riga finale è facoltativa.
- Se la lunghezza di input non è un multiplo di 16, è necessario iniziare una nuova riga per i caratteri rimanenti e lasciare vuote le celle non utilizzate (= riempite con 3 spazi).
- Ogni personaggio è posizionato esattamente nel mezzo di una cella, imbottito di uno spazio a sinistra e a destra.
- I valori nella prima riga e colonna sono dati da numeri esadecimali con le cifre
0123456789ABCDEF. Quelli sono imbottiti con uno spazio anche a sinistra e a destra. È possibile scegliere di utilizzare cifre esadecimali minuscole ma è necessario attenersi a una. - Gli unici caratteri presenti nell'output sono trattini
-, vantaggi+, pipe|, spazi, cifre per numeri esadecimali e caratteri dall'input. - È vietato qualsiasi builtin correlato a tabelle di arte ASCII o banalizzare il problema.
- Si può presumere che l'input sia costituito solo da caratteri di una codifica specifica. Si prega di specificare se è così.
- Se la tua lingua può gestire solo input ASCII, puoi assumere solo caratteri ASCII e caratteri ripetuti.
Regole
- Funzione o programma completo consentiti.
- Regole predefinite per input / output.
- Si applicano scappatoie standard .
- Questo è code-golf , quindi vince il conteggio dei byte più basso. Tiebreaker è una presentazione precedente.
Buona programmazione!
