괄호 제거

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

문제

알파벳 소문자와 연산자 +, -, *, /, 괄호만으로 이루어진 올바른 수식이 주어진다. 수식의 문법은 다음과 같다.

  1. 알파벳 소문자 하나는 문자이다.
  2. 항 하나, 수식+항, 수식-항은 수식이다.
  3. 인자 하나, 항*인자, 항/인자는 항이다.
  4. 문자 하나 또는 (수식)은 인자이다.

연산자 우선순위는 위 문법과 같아서 *, /+, -보다 먼저 묶이고, 같은 우선순위의 연산자는 왼쪽에서 오른쪽으로 묶인다.

괄호를 없앨 때에는 수식의 의미가 바뀌지 않아야 한다. + 뒤의 괄호는 그대로 펼칠 수 있고, - 뒤의 괄호를 펼칠 때에는 그 안에서 바깥으로 드러나는 +-가 서로 바뀐다. 마찬가지로 * 뒤의 괄호 안이 하나의 항이면 그대로 펼칠 수 있고, / 뒤에서 펼칠 때에는 바깥으로 드러나는 */가 서로 바뀐다.

주어진 수식과 같은 의미를 가지면서 괄호의 개수가 최소인 수식을 출력하시오.

입력

첫째 줄에 길이가 1,000을 넘지 않는 수식이 공백 없이 주어진다.

출력

첫째 줄에 괄호의 개수가 최소인 수식을 공백 없이 출력한다.