Proszę o pomoc w zadaniu przedstawionym poniżej.
Wyrażenia nawiasowe
Wyrażeniem nawiasowym nazywamy napis złożony wyłącznie ze znaków '(' i ')'. Wyrażenie nawiasowe nazwiemy poprawnym jeśli w każdym miejscu liczba poprzedzających to miejsce nawiasów '(' jest niemniejsza niż liczba poprzedzających nawiasów ')', oraz łączne liczby nawiasów ')' i '(' występujących w wyrażeniu są równe. Zadaniem Twojego programu jest stwierdzenie czy zadane wyrażenia nawiasowe są poprawne. Wygodnie będzie w tym celu stworzyć funkcję, która będzie badała poprawność zadanego wyrażenia nawiasowego.
Zadanie
Napisz program, który:
wczyta ze standardowego wejścia liczbę naturalną n oraz napisy s1,s2,...,sn.
dla każdego napisu stwierdzi czy jest on poprawnym wyrażeniem nawiasowym i wypisze wynik na standardowe wyjście.
Wejście
W pierwszym wierszu wejścia znajduje się liczba naturalna 1<=n<=10000 oznaczającą liczbę napisów. W i+1szym wierszu znajduje się napis si. Dlugość napisu jest dodatnia oraz nie przekracza 255 znakow.
Wyjście
Wi +1-szym wierszu wyjścia należy wypisać "TRUE" jeśli napis s jest poprawnym wyrażeniem nawiasowym lub "FALSE" w przeciwnym wypadku.
Przykład
Dla danych wejściowych:
4
(main)
(()(
())(())
(()())
poprawną odpowiedzią jest:
FALSE
FALSE
FALSE
TRUE