만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

오딘

시간 제한2초메모리 제한1024 MB

요약
괄호가 있는 수식이 주어질 때, 첫 번째 단계 괄호는 중괄호, 두 번째 단계는 대괄호, 그 이하는 소괄호로 바꾸는 문제입니다.
난이도

쉬움10점 중 2점

유형
문자열, 시뮬레이션
정답자
아직 제출이 없습니다

문제

라그나로크가 곧 닥친다. 하지만 오딘은 그 시점을 정확히 알지 못한다.

신들 가운데 가장 똑똑한 로키가 라그나로크의 시점을 계산하는 공식을 오딘에게 알려 주었다. 오딘은 눈이 하나뿐이라 식의 괄호를 일일이 따라가기 어렵다. 그래서 1단계 괄호는 중괄호로, 2단계 괄호는 대괄호로 바꾸고, 나머지 괄호는 소괄호로 두기로 했다. 예를 들어 x\*(y+(z\*(5+3)))x \* (y + (z \* (5 + 3)))은 x\*y+\[z\*(5+3)]x \* \\{y + \[z \* (5 + 3)]\\}이 된다.

오딘은 프로그램을 짤 줄 모르니 프로그램은 당신이 작성해야 한다. 오딘을 화나게 하지 말 것.

입력

입력 파일의 첫 번째이자 유일한 줄에 라틴 알파벳 문자, 사칙연산 기호, 공백, 숫자, 괄호로 이루어진 식이 주어진다. 괄호는 올바른 괄호 순서를 이룬다. 식의 길이는 10510^5을 넘지 않는다.

출력

이 문자열을 오딘이 읽기 편한 형식으로 출력한다.

예제2

  1. 예제 1

    입력
    x * (y + (z * (5 + 3)))
    
    예상 출력
    x * {y + [z * (5 + 3)]}
    
  2. 예제 2

    입력
    1 * (0 + k + i) * (t - h + (0 * r))
    
    예상 출력
    1 * {0 + k + i} * {t - h + [0 * r]}