🔒 짝지어 제거하기
✔ 문제 설명
🚩 요구사항 분석
- 스택을활용해 스택이 비어있지않고 peek 스택 값이 같다면 지우는 방식을 진행했다.
🔑 문제풀이
import java.util.Stack;
class Solution
{
public int solution(String s)
{
int answer = 0;
Stack<Character> stack = new Stack<>();
//1. 문자제거하기
for (int i=0; i < s.length(); i++){
char c = s.charAt(i);
// 현재 스택이 비어있지않고 peek 스택의 최상위 값이 c와 같다면 pop
if(!stack.isEmpty() && stack.peek() == c){
stack.pop();
}else{
stack.push(c);
}
}
answer = stack.size() == 0 ? 1 : 0;
return answer;
}
}
💡 추가한 테스트 케이스
|
parameters |
return |
test1 |
"baacaa" |
0 |
test2 |
"bbaaaa" |
1 |
test3 |
"bbaaaqwerasqqqr" |
0 |
4개 연속된문자 확인
3개 연속된문자 확인