[leetcode, JS] 2696. Minimum String Length After Removing Substrings

mxxn·2024년 6월 7일
0

leetcode

목록 보기
173/198

문제

문제 링크 : Minimum String Length After Removing Substrings

풀이

/**
 * @param {string} s
 * @return {number}
 */
var minLength = function(s) {
    while(s.includes('AB') || s.includes(('CD'))) {
        s = s.replaceAll('AB', '').replaceAll('CD', '')
    }

    return s.length
};
  1. 문자열 s에 'AB' 혹은 'CD'가 없을때까지 replace
  • Runtime 88 ms, Memory 53.64 MB

다른 풀이

/**
 * @param {string} s
 * @return {number}
 */
var minLength = function(s) {
    const result = []
    for(let char of s) {
        if((result[result.length -1] === 'A' && char === 'B') || result[result.length -1] === 'C' && char === 'D') {
            result.pop()
        }else {
            result.push(char)
        }
    }

    return result.length
};
  1. result 배열을 만들고
  2. for문으로 result의 마지막 값이 'A'/'C' 이거나 char의 값이 'B'/'D'인 경우엔 pop, 그외엔 push로 하여 result length 리턴
  • Runtime 85 ms, Memory 52.44 MB
profile
내일도 글쓰기

0개의 댓글