๋ฌธ์ ๋ด์ฉ
๐โ๏ธํ์ด
function solution(s) {
let answer = true;
const str = s.toUpperCase();
const stringArray = str.split("");
const pCount = stringArray.filter((item) => "P" === item).length;
const yCount = stringArray.filter((item) => "Y" === item).length;
if (pCount !== yCount) answer = false;
return answer;
}
/*
(ํ์ด)
์ฃผ์ด์ง ๋ฌธ์์ด s ๋ฅผ ๋๋ฌธ์๋ก ๋ณ๊ฒฝํ๊ณ split์ ์ด์ฉํด
๊ฐ์์ ์ํ๋ฒณ์ผ๋ก ๋๋์ด์ง ๋ฐฐ์ด๋ก ๋ง๋ค์ด ์ค ๋ค filterํจ์๋ฅผ ์ด์ฉํ์ฌ
ํด๋นํ๋ ์ํ๋ฒณ์ ๊ฐ์๋ฅผ ๊ตฌํ๊ณ P ์ Y ์ length ๊ฐ ๋์ผํ์ง ์์๊ฒฝ์ฐ ์๋ง
answer ์ false๋ฅผ ๋ฃ์ด์ค๋ค.
*/
- ์ข์ ๊ธฐํ๊ฐ ์๊ฒจ ์ฝํ ์คํฐ๋๋ฅผ ์์ํ๊ณ 1์ผ 1๋ฌธ์ ๋ฅผ ํ๋ฉฐ ์ ์ฐจ ์ฑ์ฅํ๊ธฐ๋ก ํ๊ณ
- ํด๋น ํ์ด์์์ ๋ฌธ์ ์ ์ filter ๋ฐฐ์ด ๋ฉ์๋๋ 0(N)์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๊ณ ์๋๋ฐ ์ด๋ for๋ฌธ์ผ๋ก ๋ฐฐ์ด ์ ์ฒด๋ฅผ 1๋ฒ ์ํํ๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค. ( ์๊ฐ๋ณต์ก๋๋? )
- ๊ณ ๋ก ํด๋น ํ์ด๋ 0(2N) ์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋ฉฐ ์ด์ ์ ๋ฌธ์์ด์ split๊น์งํด์ ๋ฐฐ์ด๋ก ๋ณํ๊น์ง ํ๋ค๋ณด๋ ์์ ์ด ํจ์จ๋ฉด์์ ์์ฝ๋ค๋ ํ ๋ฆฌ๋๋์ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ์๋ค.
- ์๋๋ ํ ๋ฆฌ๋๋ถ์ ํ์ด๋ก ๋จ ํ๋ฒ์ for๋ฌธ 0(N) ์ผ๋ก ํ์ด๋ฅผ ๋ง์น ์ฝ๋์ด๋ค.
๐จ๐ปํ ๋ฆฌ๋๋์ ํ์ด
function solution(s) {
const lowerString = s.toLowerCase();
let pCount = 0;
let yCount = 0;
for (let el of lowerString) {
if (el === "p") pCount++;
else if (el === "y") yCount++;
}
return pCount === yCount;
}
- ํจ์จ์ฑ์์๋ ๊ฐ๋ ์ฑ์์๋ ํจ์ฌ ์ข์๋ณด์ธ๋ค๐๐
Point .
- ์๊ฐ๋ณต์ก๋์ ๋ํด ๊ณต๋ถํ์ฌ ๋ ํจ์จ์ ์ธ ์ฝ๋๋ฅผ ์ง๋ณด์.
- ์ฝ๋ฉ์ปจ๋ฒค์ ์ ๋ง๊ฒ ๋ณ์๋ฅผ ์ ๋ฆฌํ์ (const๋ฅผ ๋ฐฐ์น ํ let ๋ฐฐ์น)
- str ๊ฐ์ ๋จ์ํ ๋ณ์๋ช ๋ณด๋ค๋ ๋ช ํํ๊ณ ์ง๊ด์ ์ธ ๋ณ์๋ช ์์ฑ. (str -> upperStr)
'์๊ณ ๋ฆฌ์ฆ & ๋ฌธ์ ํ์ด > Programmers-1' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฌธ์์ด ๋ด ๋ง์๋๋ก ์ ๋ ฌํ๊ธฐ (0) | 2022.08.24 |
---|---|
๋๋จธ์ง๊ฐ 1์ด ๋๋ ์ ์ฐพ๊ธฐ (0) | 2022.08.23 |
์์ธ์์ ๊น์๋ฐฉ ์ฐพ๊ธฐ, ์๋ฐ์๋ฐ์๋ฐ์๋ฐ์ (0) | 2022.08.23 |
3์ง๋ฒ ๋ค์ง๊ธฐ (0) | 2022.08.20 |
๊ฐ์ด๋ฐ ๊ธ์ ๊ฐ์ ธ์ค๊ธฐ (0) | 2022.08.19 |