https://programmers.co.kr/learn/courses/30/lessons/12973
스택
맨 처음에 스택에 첫번째 문자를 넣고 같은게 나올때까지 계속 스택에 문자를 쌓아준다.
연속된 문자가 두개 나오면 제거하고 계속 비교를 한다.
문자열의 끝까지 갈 때 까지 비교하고 스택이 비어있으면 1, 아니면 0을 리턴한다.
import java.util.*;
class Solution
{
public int solution(String s)
{
int answer = -1;
Stack<Character> stack = new Stack<>();
for (int i = 0; i < s.length(); i++) {
if (!stack.isEmpty() && s.charAt(i) == stack.peek()) {
stack.pop();
} else {
stack.push(s.charAt(i));
}
}
if (stack.isEmpty()) {
answer = 1;
} else {
answer = 0;
}
return answer;
}
}