Paréntesis P35352


Statement
 

pdf   zip

thehtml

Hacer un programa que determine, para cada palabra dada, si está correctamente parentizada o no. Aquí, una palabra es una secuencia no vacía de ’(’, ’)’, ’[’ y ’]’ sin espacios intermedios.

Por ejemplo, éstas son algunas palabras correctamente parentizadas:

()  ‍ ‍[]  ‍ ‍()[]  ‍ ‍[()]  ‍ ‍((()))  ‍ ‍()[]([])  ‍ ‍([[]()](()))

Y éstas son algunas palabras incorrectamente parentizadas:

)  ‍ ‍[])  ‍ ‍(](]  ‍ ‍[)()]  ‍ ‍[(()))  ‍ ‍()[][])(  ‍ ‍([[]()](()

Entrada

La entrada consiste en una serie de palabras de entre 1 y 1000 caracteres, una por línea.

Salida

Para cada palabra dada, hay que escribir "correcta" o "incorrecta" según convenga.

Puntuación

  • TestA:  ‍30 Puntos ‍

    Algunos juegos de pruebas incluirán palabras como las del ejemplo 1, es decir, solamente con los caracteres ’(’ y ’)’.

  • TestB:  ‍70 Puntos ‍

    Otros juegos de pruebas incluirán palabras con los caracteres ’(’, ’)’, ’[’ y ’]’.

Public test cases
  • Input

    ()
    (
    ()()
    ((()))
    )(
    (())()))
    

    Output

    correcta
    incorrecta
    correcta
    correcta
    incorrecta
    incorrecta
    
  • Input

    []
    ()[]
    [()]
    ([[]()](()))
    [])
    ([[]()](()
    

    Output

    correcta
    correcta
    correcta
    correcta
    incorrecta
    incorrecta
    
  • Information
    Author
    Omer Giménez
    Language
    Spanish
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++ Java