https://school.programmers.co.kr/learn/courses/30/lessons/12973
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
ํ๋ก๊ทธ๋๋จธ์ค ๋ ๋ฒจ 2.
๊ทธ๋ฅ ๋ฐ๋ณต๋ฌธ + substr๋ก ํ์๋๋ฐ, ํจ์จ์ฑ์์ ๋๋ฌด ์ค๋๊ฑธ๋ฆผ.
์ ๋ญ๊ฐ ๋ฌธ์ ๊ฐ ์๋ค! ๋ผ๊ณ ํ๋จํด์
๋ฐฉ๋ฒ์ ์๊ฐํด๋ดค๋๋ฐ
์คํ์ผ๋ก ํธ๋๊ฒ ์ต๊ณ ์ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ์๋ค.
substr์ ๊ฐ๊ฐ O(N)์ด์ง๋ง, push/pop์ ๊ฐ๊ฐ O(1)์ด๋ฏ๋ก ๊ฒฐ๊ตญ ๋ฌธ์์ด์ด ์๋๋ผ ๋ฐฐ์ด๋ก ํด๊ฒฐํ๋๊ฒ ๋ง์๋ค ^-^
๋์ ํ์ด
function solution(s)
{
var answer = 0;
if(s.length<=1) return answer;
let stack = [];
stack.push(s[0]);
for(let i=1; i<s.length; ++i){
let b = s[i];
if(stack.length===0) {
stack.push(b);
continue;
}
let a = stack.pop();
if(a!==b) {
stack.push(a);
stack.push(b);
}
}
if(stack.length===0) answer = 1;
return answer;
}

'๐ ์๊ณ ๋ฆฌ์ฆ > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Javascript/PGS] Lv.2 : ๊ทค ๊ณ ๋ฅด๊ธฐ (0) | 2025.04.07 |
---|---|
[Javascript/PGS] Lv.2 : ์์ด ๋๋ง์๊ธฐ (0) | 2025.04.02 |
[Javascript/PGS] Lv.2 : ์ ํ์ ์๊ฐ ์ด๋ (0) | 2025.03.31 |
[Javascript/PGS] Lv.2 : ์์ ์์ถ (PCCP ๊ธฐ์ถ๋ฌธ์ 2๋ฒ) (0) | 2025.03.26 |
[Javascript/PGS] Lv.2 : ํผ์ฆ ๊ฒ์ ์ฑ๋ฆฐ์ง (PCCP ๊ธฐ์ถ๋ฌธ์ 2๋ฒ) (0) | 2025.03.25 |