괄호의 제거 > 문제은행



문제은행

1745 : 괄호의 제거

제한시간: 1000 ms    메모리제한: 0 MB
해결횟수: 6 회    시도횟수: 38 회   



당신은 수학시간에 괄호의 사용법에 대해서 배운 적이 있다. 만약 어떤 식이 (1+2)*2라고 적혀있다면 이 결과는 6일 것이고, 1+(2*2)라고 적혀있다면 이 결과는 5가 될 것이다. 괄호의역할은 우선순위를 정하는 것이다. 문자로 적혀있어도 괄호의 역할은 같다. 즉, 모든 실수 a, b, c에 대해서, (a+b)*c는 a+(b*c)와 다르다. 또한, 당신은 수학시간에 괄호를 생략해도 되는 경우에 대해서 배웠다. a+(b*c)는 괄호를 생략하여 다음과 같이 써도 모든 실수 a, b, c에 대해서, 같은 결과를 가지게 된다. a+b*c 이는 곱하기의 우선순위가 더하기보다 높기 때문이다.

입력으로 들어오는 연산자는 4가지이다. (+, -, *, /) , 각각 사칙연산의 덧셈 뺄셈 곱셈 나눗셈을 뜻하며, +와 -는 우선순위가 같고, *와 /는 서로 우선순위가 같다. 또한 +, -는 *, /보다 우선순위가 낮다. +, -끼리는, 우선순위가 같으므로 왼쪽부터 차례대로 계산한다. 이제 당신이 해야 할 일은 주어진 수식에서 괄호를 제거할 수 있는 경우, 모든 괄호를 제거하는 것이다. 물론, 괄호를 제거해서 다른 결과가 나오면 안 된다. 괄호를 제거할 수 없는 경우는 입력받은 결과를 그대로 출력한다. 제한시간은 2초이다.




첫째 줄에 수식이 하나 주어진다. 문자는 알파벳 소문자(a~z)만이 쓰이며, 한 글자이다. 괄호는 (,)만이 쓰이고, 연산자는 +, -, *, /만이 쓰인다. 문자와 괄호, 연산자 사이에는 하나 이상의 공백이 있다. 문장의 총 길이는 200자 이하이다. 입력되는 알파벳은 연속적이 아닐 수 있다.




입력형식과 같은 형식이되 필요 없는 괄호만 “모두” 제거하여 출력한다.



7
a + ( b * c )
a + b * c


입력 예 2
23
( a + ( b * c ) * d + e * f ) + g * ( h + z )

출력 예 2
a + b * c * d + e * f + g * ( h + z )







HancomEducation E-mail : hancomc@hotmail.com, comkiwer@naver.com Tel : 070-7163-5782 FAX : 031-388-0996 정올소개 이용약관 개인정보처리방침
경기도 안양시 동안구 호계동 1065-10 협성골드프라자 601호, 경기도 안양시 동안구 평촌대로 109 협성골드프라자 601호
Copyright@2010-2015 jungol. All right reserved.