Stack 이 비어 있지 않을 때의 비교 방법 익혀두자
처음에는 Stack 을 2개로 한 다음에 나중에 비어있지 않음 여부로 할려고 했는데 오류가 났다.
비어 있을 때마다 한개 씩 늘리는 거 이것도 결국에 AA 이렇게 묶음으로 처리가 됐으니까 이렇게 계산하는 거다.
import java.util.*;
import java.lang.*;
import java.io.*;
// The main method must be in a class named "Main".
class Main {
static int cnt;
public static void main(String[] args) throws IOException{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
int n=Integer.parseInt(br.readLine());
for(int i=0;i<n;i++){
String s=br.readLine();
Stack<Character>stack=new Stack<>();
for(int t=0;t<s.length();t++){
char c=s.charAt(i);
if(!stack.isEmpty() && stack.peek()==c){
stack.pop();
}
else{
stack.push(c);
}
}
if(stack.isEmpty()){cnt++;}
}
System.out.println(cnt);
}
}'프로그래머스 백준 문제' 카테고리의 다른 글
| 가장 긴 공통인 수열(문장) (0) | 2025.07.16 |
|---|---|
| 12015 번 가장 긴 증가하는 부분 수열2 (0) | 2025.07.16 |
| 자바 CompareTo 와 Compare 비교 및 차이(1181번,11650번) (0) | 2025.06.21 |
| 9935번 문자열 폭발 (2) | 2025.06.19 |
| 백준 1920 (0) | 2025.06.16 |