[KO4A] Poprawność wyrażenia nawiasowego
Języki:
cpp
Limit czasu: 2.0 s
Limit pamięci: 100 MB
Limit rozmiaru rozwiązania: 400 kB
Opis
Napisz program, który wczyta ze standardowego wejścia napis, który składa się wyłącznie ze znaków:
{ } [ ] ( )a następnie wydrukuje na wyjście napis 'tak', gdy wczytany napis jest poprawnym wyrażeniem nawiasowym lub 'nie' w przeciwnym przypadku.
Zakładamy, że nawiasy nie mają priorytetów, tj. niekoniecznie nawiasy okrągłe muszą być „wewnątrz” nawiasów kwadratowych itp.
Poniżej przykłady poprawnych i niepoprawnych wyrażeń nawiasowych.
Przykład 1
Wejście
[(])
Wyjście
nie
Przykład 2
Wejście
([(){}])
Wyjście
tak
Przykład 3
Wejście
(()
Wyjście
nie
Przykład 4
Wejście
)()){}
Wyjście
nie
Przykład 5
Wejście
[[[([(){}])()()([])]]]{}
Wyjście
tak