ํ๋ฌธ ๋ฌธ์์ด = ํฐ๋ฆฐ๋๋กฌ
ํ๋ฌธ ๋ฌธ์์ด(ํฐ๋ฆฐ๋๋กฌ) : ์์์๋ถํฐ ์ฝ์ผ๋ ๋ค์์๋ถํฐ ์ฝ์ผ๋ ๊ฐ์ ๋ฌธ์์ด.
๋ฌธ์์ด ํ์ํ๋ ๋ฌธ์ . ๋ฌธ์์ด์ ์ด๋ ํ ์กฐ๊ฑด์ ์ฃผ๊ณ ํ์ํ๋ ๋ฌธ์ ์์ต๋๋ค.
1. ๋ฌธ์
์์์ ์ฝ์ ๋๋ ๋ค์์ ์ฝ์ ๋๋ ๊ฐ์ ๋ฌธ์์ด์ ํฐ๋ฆฐ๋๋กฌ์ด๋ผ๊ณ ํฉ๋๋ค. ๋ฌธ์์ด์ด ์ ๋ ฅ๋๋ฉด ํด๋น ๋ฌธ์์ด์ด ํฐ๋ฆฐ๋๋กฌ์ด๋ฉด "YES", ์๋๋ฉด “NO"๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์. ๋จ ํ๋ฌธ์ ๊ฒ์ฌํ ๋ ์ํ๋ฒณ๋ง ๊ฐ์ง๊ณ ํ๋ฌธ์ ๊ฒ์ฌํ๋ฉฐ, ๋์๋ฌธ์ ๊ตฌ๋ถํ์ง ์์ต๋๋ค. ์ํ๋ฒณ ์ด์ธ์ ๋ฌธ์๋ ๋ฌด์ํฉ๋๋ค.
์ ๋ ฅ์์ | found7, time: study; Yduts; emit, 7 Dnuof
์ถ๋ ฅ์์ | YES
2. ์ ๊ทผ๋ฐฉ๋ฒ
ํ๋ฌธ ๋ฌธ์์ด์ ํ์๋ ๋ฐฉ๋ฒ๊ณผ ๊ฐ๋ค.
ํ๋ฌธ ๋ฌธ์์ด์ ๋ฌธ์์ด ์์์ ์ ์ผ ์๊ณผ ์ ์ผ ๋์ด ๊ฐ๋ค๋ ๋ง์ด๊ณ ,
์์์๋ถํฐ ํ๊ธ์์ ๋ค์์ ๋ถํฐ ํ๊ธ์๋ฅผ ๋น๊ตํด์ผํ๋ค.
์ํ๋ฒณ๋ง ๊ฐ์ง๊ณ ํ๋ฌธ ๊ฒ์ฌ๋ฅผ ํด์ผํ๋ฏ๋ก ๋ฌธ์์ด์ ๋ฌธ์์ด์ด ์๋ ์์๋ฅผ ์ ๊ฑฐํ๋ ์ฝ๋๋ฅผ ์ถ๊ฐํด์ค๋ค.
2. ๋ฌธ์ ํ์ด
1. ๋์๋ฌธ์ ๊ตฌ๋ถํ์ง ์์ผ๋ฏ๋ก ์ฒ์๋ถํฐ ์๋ฌธ์ or ๋๋ฌธ์๋ก ํต์ผ์ํจ๋ค.
2. ์ ๊ทํํ์์ ์ฌ์ฉํด์ ๋ฌธ์์ด ๋ด์ ์ํ๋ฒณ์ ์ ์ธํ๊ณ ๋๋จธ์ง๋ฅผ ์ ๊ฑฐํ๋ค.
2. for ๋ฐ๋ณต๋ฌธ์ผ๋ก ๋ฌธ์์ด์ ๋๋ฉด์ ์์์๋ถํฐ ๋ฌธ์์ ๋ค์์๋ถํฐ ๋ฌธ์ ์ง์ง์ด์ ๋น๊ตํด์ค๋ค.
function solution(str){
let answer = "YES";
str = str.toLowerCase().replace(/[^a-z]/g, '');
// ์ฒ์๋ถํฐ ์๋ฌธ์๋ ๋๋ฌธ์๋ก ํต์ผ์ํจ๋ค.
// ์๋ฌธ์๋ก ํต์ผํ๊ณ ์ฌ๊ธฐ๋ค๊ฐ replace๋ฅผ ํด์ ์๋ฌธ์๋ง ๋๊ณ ๋๋จธ์ง ์ ๊ฑฐ -> ์ ๊ทํํ์ ์ฌ์ฉ
// ์ ๊ทํํ์์์ ^ ํ์ -> ๋ถ์
// [^a-z/g] -> ์๋ฌธ์ a-z๊น์ง ์๋๊ฑธ ์ฐพ์๋ผ global -> ์ ์ฒด ์์ญ์์
let len = str.length;
for(let i=0; i<len; i++){
if(str[i] !== str[len-i-1]) return "NO";
}
return answer;
}
let str = "found7, time: study; Yduts; emit, 7Dnuof";
console.log(solution(str));
function solution(str){
let answer = "YES";
str = str.toLowerCase().replace(/[^a-z]/g, '');
let len = str.length;
for(let i=0; i<len; i++){
if(str !== str.split('').reverse('').join('')) return "NO";
}
return answer;
}
let str = "found7, time: study; Yduts; emit, 7Dnuof";
console.log(solution(str));
3. ์ฌ์ฉ๊ฐ๋
์ ๊ทํํ์
์ ๊ท์์ ๋ง๋๋ ๋ฐฉ๋ฒ 1. ์ ๊ท์ ๋ฆฌํฐ๋ด์ฌ์ฉ (์ฌ๋์ / ๋ก ๊ฐ์ธ๋ ํจํด)
์ ๊ท์์ ๋ง๋๋ ๋ฐฉ๋ฒ 2. RegExp ๊ฐ์ฒด์ ์์ฑ์ ํจ์๋ฅผ ํธ์ถํ๋ ๋ฐฉ๋ฒ
'๐กAlgorithm > ๋ฌธ์ ํ๊ธฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
JS์๊ณ ๋ฆฌ์ฆ | ๊ฐ์ฅ ์งง์ ๋ฌธ์๊ฑฐ๋ฆฌ (0) | 2021.05.09 |
---|---|
JS์๊ณ ๋ฆฌ์ฆ | ๋ฌธ์์ด์์ ์ซ์๋ง ์ถ์ถ (0) | 2021.05.06 |
JS์๊ณ ๋ฆฌ์ฆ | ํ๋ฌธ ๋ฌธ์์ด(๋ฌธ์์ด ํ์) (0) | 2021.05.03 |
JS์๊ณ ๋ฆฌ์ฆ | ๋ด์ฐ๋ฆฌ (2์ฐจ์ ๋ฐฐ์ด ๋ค๋ฐฉํฅ ํ์) (0) | 2021.05.02 |
JS์๊ณ ๋ฆฌ์ฆ | ๊ฒฉ์ํ ์ต๋ํฉ(2์ฐจ์ ๋ฐฐ์ด) (0) | 2021.05.01 |