๋ฌธ์ ๋งํฌ
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ซ์ ๋ฌธ์์ด๊ณผ ์๋จ์ด
๋ค์ค์ ํ๋ก๋๊ฐ ์ซ์๋์ด๋ฅผ ํ๊ณ ์์ต๋๋ค. ๋ค์ค๊ฐ ํ๋ก๋์๊ฒ ์ซ์๋ฅผ ๊ฑด๋ฌ ๋ ์ผ๋ถ ์๋ฆฟ์๋ฅผ ์๋จ์ด๋ก ๋ฐ๊พผ ์นด๋๋ฅผ ๊ฑด๋ค์ฃผ๋ฉด ํ๋ก๋๋ ์๋ ์ซ์๋ฅผ ์ฐพ๋ ๊ฒ์์ ๋๋ค. ๋ค์์ ์ซ์์ ์ผ๋ถ ์
programmers.co.kr
์ ๊ทผ๋ฐฉ๋ฒ
์ฐ์ ์์ธ์ฒ๋ฆฌ๋ฅผ ํตํด ์ซ์๋ก๋ง ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ ๊ฐ๋จํ๊ฒ ์ฒ๋ฆฌํฉ๋๋ค.
๊ทธ ๋ค์ forEach๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ง๋ค์ด ๋์ numList๋ฅผ ์ํํ๋๋ฐ
์ด๋ split์ผ๋ก ๋ง์ฝ numList์ el์ answer์ ๊ฐ์ ๋ฌธ์์ด์ด ์๋ค๋ฉด ์ด๋ฅผ ๊ธฐ์ค์ผ๋ก ๋๋๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋๋ newArr๋ฅผ index๋ฒํธ(zero => 0, one => 1..)๋ก joinํ๋ฉด ๋ฌธ์์ด์ด ์ซ์๋ก ๋ณํ๊ฒ ๋ฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก parseInt๋ก ํ๋ณํ์ ํ๋ฉด ์ ์คํ๋ฉ๋๋ค.
function solution(s) {
var answer = s;
const numList = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
if (typeof(parseInt(answer)) === NaN){
return parseInt(answer);
}
numList.forEach((el, idx) => {
const newArr = answer.split(el);
answer = newArr.join(idx);
})
return parseInt(answer);
}
'์ฝ๋ฉํ ์คํธ > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Javascript] ํคํจ๋ ๋๋ฅด๊ธฐ(67265) (0) | 2022.04.21 |
---|---|
[Javascript] ์ ๊ท ์์ด๋ ์ถ์ฒ (72410) (0) | 2022.04.20 |
[Javascript] ๋ก๋์ ์ต๊ณ ์์์ ์ต์ ์์ (77484) (0) | 2022.04.20 |
[Javascript] ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐ (92334) (0) | 2022.04.19 |
์์ ๋ง๋ค๊ธฐ (0) | 2022.01.10 |