Questo si ispira a Monday Mini-Golf # 6: Meeesesessess upp teeexexextext
sfondo
ETHproductions ha difficoltà a inserire testo nella sua solita pagina web. Ogni volta che usa cifre o lettere, il testo verrà misurato senza essere valutato. Il tuo compito è di aiutarlo a digitare in modo da raggiungere il comportamento normale.
La trasformazione
La trasformazione influisce sulle serie di caratteri alfanumerici ( [0-9A-Za-z]
) delimitati da qualsiasi carattere non alfanumerico. Nel seguente esempio, la prima riga verrebbe trasformata nella seconda (le altre righe mostrano la suddivisione della trasformazione)
An12num:
Annn1n12n12nn12nn12nun12nun12numn12num
A
nn
n1
n12
n12nn12n
n12nun12nu
n12numn12num
In particolare, qualsiasi carattere alfanumerico dopo il primo di una serie verrà trasformato nell'intera serie finora, tranne il primo carattere . Inoltre, se il personaggio è una lettera (anziché una cifra), il personaggio verrà trasformato in due volte la sequenza.
Per fortuna, backspace cancellerà l'ultimo carattere e ripristinerà anche l'inizio della corsa.
Compito
Questa volta il tuo compito non è quello di eseguire la trasformazione. Invece, data una stringa di input, è necessario restituire un testo codificato che, se trasformato, comporterà l'input. L'output deve essere il più breve possibile, dove viene \<char>
conteggiato come un singolo carattere.
Il testo è codificato come segue:
\ -> \\
backspace character -> \b
linefeed -> \n
È possibile scrivere un programma o una funzione, prendendo l'input tramite STDIN (o l'alternativa più vicina), l'argomento della riga di comando o l'argomento della funzione e producendo il risultato tramite STDOUT (o l'alternativa più vicina), il valore di ritorno della funzione o il parametro della funzione (out).
Casi test
Ogni test case è composto da due righe, la prima è input, la seconda output.
Heeeeeelp me. It shouldn't be messed up.
Hee \blp\b me\b. It\b sh\bou\bld\bn't be\b me\bss\bed\b up\b.
alert("Hello, world!");
al\ber\bt("He\bll\bo, wo\brl\bd!");
1223234234523456
123456
1
ogni volta) nelle corse.