• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

다른 풀이

22.02.07 09:19 작성 조회수 117

0

package algorithm.Inf;

import java.util.Scanner;
import java.util.Stack;

public class Inf5_2 {

	public String solution(String str) {
		String answer="";
		Stack <Character> stack = new Stack<>();
		for(char x : str.toCharArray()) {
			if(stack.isEmpty() && x!='(' && x!=')') {
				answer+=x;
			}else if(x=='(') {
				stack.push(x);
			}else if(x==')') {
				stack.pop();
			}
		}
		return answer;
	}

	public static void main(String[] args) {
		Inf5_2 T = new Inf5_2();
		Scanner sc = new Scanner(System.in);
		String str = sc.next();
		System.out.println(T.solution(str));
		sc.close();
	}
}

안녕하세요. 제가 알파벳 자체를 스택이 비어있고, '('나 ')'가 새로 들어오지 않을 때 알파벳을 answer에 추가하는 식으로 코드를 짜보았었는데 이 풀이가 논리적인 오류가 없는지 봐주시면 감사드리겠습니다.

 

답변 0

답변을 작성해보세요.

답변을 기다리고 있는 질문이에요.
첫번째 답변을 남겨보세요!