Se hai mai provato ad aggiungere etichette a una trama davvero densa, ti renderai conto che a volte le etichette si sovrappongono, rendendole difficili da leggere. Faremo qualcosa di simile ma in 1D.
L'input sarà una sequenza di (label, x-coordinate)coppie e l'output sarà il risultato del disegno di ogni punto ed etichetta, nell'ordine dato. Un asterisco che *rappresenta il punto deve essere posizionato sulla coordinata x indicata e l'etichetta deve seguire. Tutti i personaggi esistenti verranno sovrascritti.
Ad esempio, se l'input fosse
Hello 0
World 8
Fizz 3
Buzz 5
PPCG 16
X 9
Quindi succederebbe quanto segue:
*Hello
*Hello *World
*He*Fizz*World
*He*F*Buzzorld
*He*F*Buzzorld *PPCG
*He*F*Buz*Xrld *PPCG
La riga finale dovrebbe quindi essere emessa.
Regole I / O
L'input può consistere in qualsiasi numero di coppie. Ogni etichetta sarà composta solo da lettere maiuscole e minuscole e la lunghezza dell'etichetta sarà al massimo di 127 caratteri. Ogni coordinata x sarà compresa tra 0 e 127 inclusi.
L'input può essere in qualsiasi elenco o formato di stringa conveniente in modo tale che le coppie siano inequivocabili e le etichette / coordinate x si alternino nell'input. Ad esempio, un formato simile
[("Hello", 0), ("World", 8) ...]o[0 "Hello" 8 "World" ...]va bene. Tuttavia, non puoi assumere due distinti elenchi di etichette e coordinate x.Funzioni e programmi completi sono entrambi a posto.
Tutti i punti non coperti da un'etichetta devono essere rappresentati con uno spazio. Tuttavia, potrebbe non esserci spazio bianco iniziale o finale estraneo a parte una singola nuova riga finale opzionale.
Esempi
Ingresso:
OneLabel 10
Produzione:
*OneLabel
Ingresso:
Heathrow 0
Edinburgh 2
London 4
Liverpool 6
Oxford 8
Produzione:
*H*E*L*L*Oxfordl
Ingresso:
alpha 20
beta 4
gamma 57
delta 3
epsilon 22
zeta 32
eta 53
theta 27
Produzione:
*delta *a*epsi*thetazeta *eta*gamma
Ingresso:
abc 5
d 5
abc 10
ABCDEFGHIJKLMNOPQRSTUVWXYZ 127
Produzione:
*dbc *abc *ABCDEFGHIJKLMNOPQRSTUVWXYZ
Si noti che le etichette e / o le coordinate x possono essere ripetute.