Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024
Problem description
Jasio często lubi robić rzeczy na opak. W
dodatku jest dość leniwy. Tym razem na opak oraz leniwie postanowił
napisać napis. Za każdym razem kiedy Jasiowi przyszło do głowy coś
odwrócić to umieszczał to w nawiasie: na przykład, jeśli Jasio napisał
inf(ormat)yka
to miał naprawdę na myśli napis
inftamroyka
. Problem w tym, że Jasio jest bardzo sprytny i
czasami nawiasy umieszczał wewnątrz innych nawiasów. Przy odczytywaniu
prawdziwych intencji Jasia oczywiście należy (tak jak w przypadku
działań matematycznych) odwracać zawartość nawiasów od najbardziej do
najmniej zagnieżdżonych: na przykład:
nap(is(odw)ro(co)nypar)erazy
należy rozumieć jako
równoważny z nap(iswdoroocnypar)erazy
, czyli:
naprapyncoorodwsierazy
.
Jasio oczywiście nie ma teraz chęci na ustalanie co tak naprawdę miał na myśli. Ale Ty przecież potrafisz programować…
Napisz program, który wczyta napis napisany przez Jasia, wyznaczy co tak naprawdę Jasio miał na myśli i wypisze wynik na wyjście.
Wejście
W pierwszym (jedynym) wierszu wejścia znajduje się ciąg małych liter
alfabetu angielskiego oraz nawiasów (
i )
–
napis Jasia.
Można założyć, że po zignorowaniu liter, wejście stanowi poprawne nawiasowanie.
Wyjście
W pierwszym (jedynym) wierszu wyjścia należy wypisać napis Jasia po odwróceniu fragmentów w nawiasach, zgodnie z regułami opisanymi powyżej.
Ograniczenia
Długość napisu Jasia na wejściu nie przekracza 1 000 000 znaków.
Przykład
Wejście | Wyjście | |
|
|