Submit | All submissions | Best solutions | Back to list |
Problem hidden
FINAL3 - Reto Nro 3 Pispirito y el comodín |
Pispirito está realizando un paseo en un plano de dos dimensiones, comenzando en el origen. Se le da una cadena s con las direcciones de movimiento:
Una ' L ' indica que debe mover una unidad de la izquierda.
Una ' R ' indica que debe mover una unidad de la derecha.
Una ' U ' indica que debe mover una unidad hacia arriba.
Una ' D ' indica que se debe mover una unidad hacia abajo.
Él quiere poner fin a su paseo en el origen. Para ello, cuenta con un comodín especial. Este comodín puede sustituir a cualquier carácter de s con cualquier valor de ' L ', ' R ', ' U ' o ' D '. Sin embargo, debido a que no quiere desgastar el comodín, quiere hacer el número mínimo de ediciones posibles. Por favor, dígale a Pispirito cuál es el número mínimo de cambios que necesita hacer para producir una cadena que, al caminar, terminará en el origen, o si no hay tal cadena..
Input
La primera y única línea contiene la cadena s ( 1 ≤ | s | ≤ 100 000 ) - se dan las instrucciones a Pispirito.
Output
Si hay una cadena que satisface las condiciones de salida, un solo número entero - el número mínimo de cambios necesarios. En caso de que no sea posible cambiar la secuencia de tal manera que va a traer a Pispirito al origen, la salida debe ser -1 .
Example
Input:RRU
Output:-1
Input:
UDUR
Output:
1
Input:
RUUR
Output:
2
NOTA
En el primer ejemplo, se le dice que camine a la derecha, luego a la derecha, luego hacia arriba. Es fácil darse cuenta de que es imposible editar estas instrucciones para formar un paseo válido.
En el segundo ejemplo, se le dice que subir, luego hacia abajo y luego hacia arriba, luego a la derecha. Una posible solución es cambiar s a "LDUR". Esta cadena utiliza 1 edición, que es el mínimo posible. También finaliza en el origen.
Added by: | MaratónAFDM |
Date: | 2016-11-04 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | MAWK BC C NCSHARP CSHARP C++ 4.3.2 CPP CPP14 COFFEE DART FORTH JAVA JS-RHINO JULIA KTLN NODEJS OCT PHP PROLOG PYPY3 PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA |