ACM - Universidad Autonoma de Puebla |
Rafael ha faltado a sus clases de Programación. Su profesor les ha dejado como tarea hacer un programa que verifique si una cadena compuesta de delimitadores (corchetes, paréntesis y llaves) está bien formada, es decir que se abren y cierran en forma apropiada. Por ejemplo las cadena “{()}”, “{()({})[]}” y “({}[()])” son correctas, mientras que “(()”, “{(]}”, “{}([)]” no lo son. Dado que Rafael no quiere reprobar la materia, te ha pedido que le hagas su programa.
En la primera línea de entrada habrá un entero n (0 < n ≤ 100) que representa en número de casos a procesar. Cada caso de entrada consiste de una sola línea que contiene una cadena S (0 < |S| < 350) que consiste únicamente de delimitadores (corchetes, paréntesis y llaves).
Por cada caso de entrada debes imprimir una línea con el mensaje YES si la cadena está bien formada, en caso contrario imprime NO.
Ejemplo de entrada |
Ejemplo de salida |
---|---|
4 |
YES |