공부/백준
[백준-9012] 괄호 - Java
빈v
2022. 6. 8. 16:05
728x90
https://www.acmicpc.net/problem/9012
9012번: 괄호
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고
www.acmicpc.net
스택을 이용하여 풀었다.
'('가 들어왔을 때는 stack.push()를 이용하여 스택에 추가한다.
')'가 들어왔을 때는 '('가 있을 경우 stack.pop()을 이용하여 '('제거한다.
'('가 없을 경우 올바른 문자열이 아니므로 "NO"를 저장하며 for문을 빠져나온다.
코드
import java.util.*;
public class back9012 {
public static void main(String args[]){
Scanner scanner=new Scanner(System.in);
int num=scanner.nextInt();
scanner.nextLine();
for(int i=0;i<num;i++){
String answer="YES";
Stack <Character> stack=new Stack<>();
String str=scanner.nextLine();
for(int j=0;j<str.length();j++){
if(str.charAt(j)=='('){
stack.push('(');
}else if(!stack.empty()){
stack.pop();
}else{
answer="NO";
break;
}
}
if(!stack.empty()){
answer="NO";
}
System.out.println(answer);
}
}
}
728x90
반응형