Esto está inspirado en el Lunes Mini-Golf # 6: Meeesesessess upp teeexexextext
Fondo
ETHproductions tiene dificultades para ingresar texto en su página web habitual. Cada vez que use dígitos o letras, el texto será memesessessesesseesseessedessed. Su tarea es ayudarlo a escribir para que se logre el comportamiento normal.
La transformación
La transformación afecta las ejecuciones de caracteres alfanuméricos ( [0-9A-Za-z]
) delimitados por cualquier carácter no alfanumérico. En el siguiente ejemplo, la primera línea se transformaría en la segunda (las otras líneas muestran el desglose de la transformación)
An12num:
Annn1n12n12nn12nn12nun12nun12numn12num
A
nn
n1
n12
n12nn12n
n12nun12nu
n12numn12num
En particular, cualquier carácter alfanumérico después del primero en una ejecución se transformará en toda la ejecución hasta ahora, excepto el primer carácter . Además, si el personaje es una letra (en lugar de un dígito), el personaje se convertirá en dos veces la carrera.
Afortunadamente, la tecla de retroceso eliminará el último carácter y también restablecerá el comienzo de la ejecución.
Tarea
Esta vez su tarea no es realizar la transformación. En cambio, dada una cadena de entrada, debe devolver un texto codificado que, si se transforma, dará como resultado la entrada. La salida debe ser lo más corta posible, donde se \<char>
cuenta como un solo carácter.
El texto se codifica de la siguiente manera:
\ -> \\
backspace character -> \b
linefeed -> \n
Puede escribir un programa o función, tomando la entrada a través de STDIN (o la alternativa más cercana), argumento de línea de comando o argumento de función y generando el resultado a través de STDOUT (o la alternativa más cercana), el valor de retorno de la función o el parámetro de función (out).
Casos de prueba
Cada caso de prueba tiene dos líneas, la primera entrada y la segunda salida.
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
cada vez) en las carreras.Respuestas:
CJam, 207
Pruébalo en línea
Explicación:
Casi se me olvida escribir esto: p
El problema se resuelve en varios pasos:
fuente