
생각 과정
p, P의 개수 / y, Y의 개수 확인하기. 같으면 true
둘 다 없으면 true
그 외 전부 false
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
function solution(s){
let countP = 0;
let countY = 0;
for (i = 0; i < s.length; i++) {
if (s[i] === 'p' || s[i] === 'P') {
countP++;
}
if (s[i] === 'y' || s[i] === 'Y') {
countY++;
}
}
if (countP === countY || !countP && !countY) {
return true;
}
return false;
}
|
cs |
알게 된 것들
1. 변수명 (numP -> countP)
- 클린 코드 (Meaningful Names)
- 변수/함수가 무엇을 하는지 이름만 보고 짐작 가능해야 한다.
2. 비교는 엄격하게!!!
3. if (countP === countY || !countP && !countY) 부분에 대해
- &&가 ||보다 연산 순위 높음
- 의도치 않게 작동할 수 있었다.
- !countP && !countY 부분에 소괄호 적어주거나
- 아예 (countP || 0) === (countY || 0); 같은 생각도 가능
'문제 풀이 > Programmers' 카테고리의 다른 글
| [프로그래머스] 12903번: 가운데 글자 가져오기 (JavaScript) (0) | 2025.06.04 |
|---|---|
| [프로그래머스] 12917번: 문자열 내림차순으로 배치하기 (JavaScript) (0) | 2025.06.04 |
| [프로그래머스] 12922번: 수박수박수박수박수박수? (JavaScript) (0) | 2025.06.04 |
| [프로그래머스] 12937번: 짝수와 홀수 (JavaScript) (0) | 2025.06.02 |
| [프로그래머스] 12919번: 서울에서 김서방 찾기 (JavaScript) (0) | 2025.06.02 |