Module: Secuencia de paréntesis correcta (RSP)


Problem

2 /6


Cálculo omega lambda

Theory Click to read/hide

Las secuencias regulares de paréntesis consisten en paréntesis de apertura y cierre de uno o más tipos, cada paréntesis de apertura tiene un paréntesis de cierre y (en el caso de varios tipos) sus tipos no se superponen.
SP correcto: 
( ( ) ) ( ) ( ) 
{ } [ ( ) ] ( ) 
{ [ ( { } ) ] } 
SP no válido: 
) ) ( ( ) ) ( ( 
{ [ ( ] ) } 
( ( ] } 
 
Para verificar si una secuencia de corchetes es del mismo tipo, solo verifique el saldo.
Es decir, partimos de una variable igual a cero (saldo). Luego repasamos la cadena (si no sabes cómo hacerlo, ¡CORRE, ESTÚPIDO!), aumentando el saldo cuando se encuentra con el paréntesis de apertura y disminuyéndolo cuando se encuentra con el de cierre. Si en algún momento el saldo se vuelve negativo o al final no es igual a cero, entonces la secuencia es incorrecta.

Problem

Cálculo de omega lambda: un desarrollo innovador de "British Scientists, Inc" en el campo de la lógica formal. Cualquier expresión del cálculo omega-lambda consta de paréntesis y términos (un término puede ser cualquier secuencia de letras latinas). 
La reducción de Izzy es una de las operaciones en tales expresiones. Cuando se ejecuta, se comprueba si la secuencia de paréntesis en la expresión es correcta. Los términos son ignorados. Si la secuencia es correcta, se convierte en el término gg, si no, se convierte en el término wp
Se utiliza como entrada una expresión omega-lambda de no más de 107 caracteres. Debe mostrar el resultado de su reducción izzy.
 

 

Ejemplos
# Entrada Salida
1 a(b(xx)f(g(x))m(y)) gg