-
[백준-9012] 괄호 - Java공부/백준 2022. 6. 8. 16:05728x90
https://www.acmicpc.net/problem/9012
스택을 이용하여 풀었다.
'('가 들어왔을 때는 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반응형'공부 > 백준' 카테고리의 다른 글
[백준-1676] 팩토리얼 0의 개수 - Java (0) 2022.06.10 [백준-10845] 큐 - Java (0) 2022.06.09 [백준-1920] 수 찾기 - Java (0) 2022.06.08 [백준-1010] 다리 놓기 - Java (0) 2022.06.08 [백준-11051] 이항 계수2 - Java (0) 2022.06.08