인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

류시명님의 프로필 이미지
류시명

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

2. 괄호 문자 제거(스택)

이 방법도 괜찮은 방법일까요?

작성

·

169

0

function solution(s) {
let answer = '';
let block = 0;

for (const l of s) {
if (l === '(') {
block++;
continue;
} else if (l === ')') {
block--;
continue;
}

if (block > 0) {
continue;
} else {
answer += l;
}
}

return answer;
}

let str = "(A(BC)D)EF(G(H)(IJ)K)LM(N)";
console.log(solution(str));

for문 하나로 풀어보았습니다.

( 를 만나면 block 변수를 1 증가. )를 만나면 blcok 변수 1 감소

block 변수가 0보다 크면 그 안에 있는 문자들은 괄호 안에 있으니까 무시

block이 없을 때 만나는 문자만 answer에 추가.

이런 로직으로 풀어보았습니다. 

혹시 대응하지 못하는 예시가 있을까요??

항상 감사합니다 선생님

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

네. 이 방법으로도 해결됩니다.

류시명님의 프로필 이미지
류시명

작성한 질문수

질문하기