📄 문제
🔍 문제 접근
💡 항상 2개씩 제거되어야 하므로 s
의 길이가 홀수인 경우에는 항상 0
으로 리턴한다.
💡 Stack
을 사용해 문제를 해결한다.
다른 방법으로 접근했다가 효율성 테스트를 통과하지 못했다..😥
👉 입출력 예 #1으로 Stack 이해하기
📝 문제 풀이
function solution(s) {
if (s.length % 2) {
return 0;
}
const stack = [];
for (let i = 0; i < s.length; i++) {
const char = s[i];
if (char === stack[stack.length - 1]) {
stack.pop();
} else {
stack.push(char);
}
}
return stack.length ? 0 : 1;
}
'코딩테스트' 카테고리의 다른 글
[프로그래머스/Javascript] 점프와 순간 이동 (0) | 2023.07.22 |
---|---|
[프로그래머스/Javascript] 캐시 (0) | 2023.07.18 |
[프로그래머스/Javascript] 구명보트 (0) | 2023.07.13 |
[프로그래머스/Javascript] 올바른 괄호 (0) | 2023.07.09 |
[프로그래머스/Javascript] 영어 끝말잇기 (0) | 2023.07.08 |