๐ฉ๐ปโ๐ป๋ฌธ์ ๋งํฌ
[์ธํ๋ฐ ์น์
6] ๊ต์ก๊ณผ์ ์ค๊ณ (Javascript)
์ ๋ฃ ๊ฐ์์ธ ๊ด๊ณ๋ก ๋ฌธ์ ์ค๋ช
์ ์๋ตํฉ๋๋ค.
โ๏ธIdea Sketch
2021-06-27
1. ๋ฌด์กฐ๊ฑด c -> b -> a ์์ด์ด์ผ ํ๋ค
2. need๊ฐ ์๋ ๊ณผ๋ชฉ์ ์ ๊ท์์ผ๋ก ์ ๊ฑฐํ ํ, need์ ๋น๊ตํ๋ฉด?
plan = plan.replace(/[^CBA]/g, '');
๋ฌธ์ ์
์ ์ธํ ๋ฌธ์์ด๋ก need ๋ณ์๋ฅผ ํ ๋นํ ์ ์๋ค
3. need์ plan ๋ ๋ค queue๋ก ์์ฑ
- while(plan.length > 0)
- ํญ์ plan.shift()
- plan.shift()์ need[0]์ด ๋์ผํ ๊ฒฝ์ฐ need.shift()
- ๋ง์ง๋ง์ need.length === 0 ์ด๋ฉด "YES", ์๋๋ฉด "NO" --> ์ผํญ์ฐ์ฐ์
while(plan.length) {
if (plan.shift() === need[0]) need.shift();
}
return need.length ? "NO" : "YES";
โ๏ธ์์ค์ฝ๋
2021-06-27
function solution(need, plan) {
need = need.split('');
plan = plan.split('');
while (plan.length) {
if (plan.shift() === need[0]) need.shift();
}
return need.length ? "NO" : "YES";
}