На основі цього питання.
Задавши рядок, замініть кожну дужку ()[]{}<>дужкою відповідного типу, щоб дужки відповідали, і вкладені дужки провели так:
- Зовнішні є
() - Прямо всередині
()має бути[] - Прямо всередині
[]має бути{} - Прямо всередині
{}має бути<> - Прямо всередині
<>буде()знову (цикли)
Усі знаки, що не належать до дужок, повинні залишатися такими, якими вони є. Відкриті дужки можуть бути замінені лише відкритими дужками певного типу, а закриті дужки - із закритими дужками.
Введення завжди зробить це можливим. Це означає, що його дужки правильно підібрані, якщо їх тип ігнорується. Таким чином, {ab<)c]дійсний вхід, але ab)(cdчи ab((cdнемає.
Приклади:
2#jd {¤>. = 2#jd (¤).
abcdef = abcdef
(3×5+(4-1)) = (3×5+[4-1])
<<<>><<>><<<<<<>>>>>>> = ([{}][{}][{<([{}])>}])
Використання нативного перетворення введення таким чином (автоматичний синтаксис мови) не дозволяється.
Як завжди: виграє найкоротший код.