๐ ๋ฌธ์
- ๋๋ฌธ์์ ์๋ฌธ์๊ฐ ์์ฌ์๋ ๋ฌธ์์ด s์ 'p'์ ๊ฐ์์ 'y'์ ๊ฐ์๋ฅผ ๋น๊ตํด ๊ฐ์ผ๋ฉด True, ๋ค๋ฅด๋ฉด False๋ฅผ return
- 'p', 'y' ๋ชจ๋ ํ๋๋ ์๋ ๊ฒฝ์ฐ๋ ํญ์ True๋ฅผ ๋ฆฌํด
- ๋จ, ๊ฐ์๋ฅผ ๋น๊ตํ ๋ ๋๋ฌธ์์ ์๋ฌธ์๋ ๊ตฌ๋ณํ์ง ์์ต๋๋ค.
- ์๋ฅผ ๋ค์ด s๊ฐ "pPoooyY"๋ฉด true๋ฅผ returnํ๊ณ "Pyy"๋ผ๋ฉด false๋ฅผ return
โจ๏ธ ์ ์ถ๋ ฅ ์์

๐โโ๏ธ ๋ด๊ฐ ํผ ๋ฐฉ์
- filter ์จ๋ณด๋ ค๋ค๊ฐ ๊ธธ์ด๋ฅผ ๊ตฌํด์ผํด์ ๋ฐฐ์ด ์์ ๋ฃ์ด์ค์ผ ํ๊ธฐ ๋๋ฌธ์
- forEach๋ก ๋๋ฉฐ p, P, y, Y๋ ์ผ์นํ๋ ๋ฌธ์ ์ฐพ์ ๋ฐฐ์ด์ ๋ฃ์ด์ฃผ์๋ค!
function solution(s){
// ํ๋ผ๋ฏธํฐ s์ ๋ฌธ์์ด์ ๋ฃ์ด์ค ๋ฐฐ์ด
let arr = [];
// 'p', 'y' ๊ธธ์ด ๋ฃ์ด์ค ๋ณ์
let pArr = [];
let yArr = [];
// ํ๋ผ๋ฏธํฐ s ๋ฌธ์์ด์ ๋ฐฐ์ด์ ๋ฃ์ด์ฃผ๊ธฐ
arr = [...s];
// console.log(arr);
// arr ๋ฐฐ์ด์ ๋๋ฉด์
arr.forEach((str)=> {
// ๋ง์ฝ arr ํ๋ํ๋ ์ค์ p ๋๋ P๋ ๊ฐ๋ค๋ฉด
if(str === 'p' || str === 'P') {
// ๊ทธ ๊ธ์๋ฅผ pArr์ ๋ฃ์ด์ฃผ๊ธฐ
pArr.push(str);
// ๊ทธ๊ฒ ์๋๊ณ ๋ง์ฝ arr ํ๋ํ๋ ์ค์ y ๋๋ Y๋ ๊ฐ๋ค๋ฉด
} else if(str === 'y' || str === 'Y') {
// ๊ทธ ๊ธ์๋ฅผ yArr์ ๋ฃ์ด์ฃผ๊ธฐ
yArr.push(str);
}
})
// console.log(pArr);
// console.log(yArr);
// p, P๊ฐ ๋ค์ด์๋ ๋ฐฐ์ด์ ๊ธธ์ด์
// y, Y๊ฐ ๋ค์ด์๋ ๋ฐฐ์ด์ ๊ธธ์ด ๋น๊ตํด์ ๊ฐ์ผ๋ฉด
if(pArr.length === yArr.length) {
// true ๊ฐ ๋ฐํ
return true;
// ๊ฐ์ง ์์ผ๋ฉด false ๋ฐํ
} else {
return false;
}
}
๐ ๋ฌธ์
- ๋๋ฌธ์์ ์๋ฌธ์๊ฐ ์์ฌ์๋ ๋ฌธ์์ด s์ 'p'์ ๊ฐ์์ 'y'์ ๊ฐ์๋ฅผ ๋น๊ตํด ๊ฐ์ผ๋ฉด True, ๋ค๋ฅด๋ฉด False๋ฅผ return
- 'p', 'y' ๋ชจ๋ ํ๋๋ ์๋ ๊ฒฝ์ฐ๋ ํญ์ True๋ฅผ ๋ฆฌํด
- ๋จ, ๊ฐ์๋ฅผ ๋น๊ตํ ๋ ๋๋ฌธ์์ ์๋ฌธ์๋ ๊ตฌ๋ณํ์ง ์์ต๋๋ค.
- ์๋ฅผ ๋ค์ด s๊ฐ "pPoooyY"๋ฉด true๋ฅผ returnํ๊ณ "Pyy"๋ผ๋ฉด false๋ฅผ return
โจ๏ธ ์ ์ถ๋ ฅ ์์

๐โโ๏ธ ๋ด๊ฐ ํผ ๋ฐฉ์
- filter ์จ๋ณด๋ ค๋ค๊ฐ ๊ธธ์ด๋ฅผ ๊ตฌํด์ผํด์ ๋ฐฐ์ด ์์ ๋ฃ์ด์ค์ผ ํ๊ธฐ ๋๋ฌธ์
- forEach๋ก ๋๋ฉฐ p, P, y, Y๋ ์ผ์นํ๋ ๋ฌธ์ ์ฐพ์ ๋ฐฐ์ด์ ๋ฃ์ด์ฃผ์๋ค!
function solution(s){
// ํ๋ผ๋ฏธํฐ s์ ๋ฌธ์์ด์ ๋ฃ์ด์ค ๋ฐฐ์ด
let arr = [];
// 'p', 'y' ๊ธธ์ด ๋ฃ์ด์ค ๋ณ์
let pArr = [];
let yArr = [];
// ํ๋ผ๋ฏธํฐ s ๋ฌธ์์ด์ ๋ฐฐ์ด์ ๋ฃ์ด์ฃผ๊ธฐ
arr = [...s];
// console.log(arr);
// arr ๋ฐฐ์ด์ ๋๋ฉด์
arr.forEach((str)=> {
// ๋ง์ฝ arr ํ๋ํ๋ ์ค์ p ๋๋ P๋ ๊ฐ๋ค๋ฉด
if(str === 'p' || str === 'P') {
// ๊ทธ ๊ธ์๋ฅผ pArr์ ๋ฃ์ด์ฃผ๊ธฐ
pArr.push(str);
// ๊ทธ๊ฒ ์๋๊ณ ๋ง์ฝ arr ํ๋ํ๋ ์ค์ y ๋๋ Y๋ ๊ฐ๋ค๋ฉด
} else if(str === 'y' || str === 'Y') {
// ๊ทธ ๊ธ์๋ฅผ yArr์ ๋ฃ์ด์ฃผ๊ธฐ
yArr.push(str);
}
})
// console.log(pArr);
// console.log(yArr);
// p, P๊ฐ ๋ค์ด์๋ ๋ฐฐ์ด์ ๊ธธ์ด์
// y, Y๊ฐ ๋ค์ด์๋ ๋ฐฐ์ด์ ๊ธธ์ด ๋น๊ตํด์ ๊ฐ์ผ๋ฉด
if(pArr.length === yArr.length) {
// true ๊ฐ ๋ฐํ
return true;
// ๊ฐ์ง ์์ผ๋ฉด false ๋ฐํ
} else {
return false;
}
}