Dada una expresión que coincida con la expresión regular /^[-~]*x$/, evalúela en términos de xy genere una cadena que coincida con la expresión regular /^-?x[+-]\d+$/.
Por ejemplo, la cadena se -~xevalúa como x+1, mientras que la cadena se -~-xevalúa como -x+1, y la cadena se -~-~--xevalúa como x+2.
Comenzamos xy evaluamos la cadena de derecha a izquierda. -niega el término, mientras se ~convierte ya -y-1.
Casos de prueba:
x x+0
~x -x-1
-~x x+1
~-~x -x-2
-~-~x x+2
--~~x x+0
~-x x-1
-~-x -x+1
Este es el código de golf . La respuesta más corta en bytes gana.
El formato de entrada / salida es estricto. El "x"es obligatorio.
~cuando no se ha definido
x+010lugar dex+10para-~-~-~-~-~-~-~-~-~-~x? Coincide con la segunda expresión regular.