문제


입력된 문자열에서 소괄호 ( ) 사이에 존재하는 모든 문자를 제거하고 남은 문자만 출력하는 프로그램을 작성하세요.

입력

첫 줄에 문자열이 주어진다. 문자열의 길이는 100을 넘지 않는다.

출력

남은 문자만 출력한다.

예시 입력

(A(BC)D)EF(G(H)(IJ)K)LM(N)

예시 출력

EFLM

문제 풀이


Stack을 사용하여 소괄호 () 사이에 존재하는 모든 문자를 제거하고 남은 문자만 출력해보자.

stack.pop() : 젤 마지막 요소를 꺼내고 꺼낸 요소 반환한다.

  1. 배열의 문자들을 스택에 저장(push)
  2. 만약 배열의 문자가 ‘)’라면 요소를 꺼내고(pop) 꺼낸 요소가 ‘(’인지 확인하면서 while문 반복
  3. foreach를 통해서 스택의 요소들을 출력