728x90
문제
정답 처리된 코드(1)
function solution(s){
var answer = true, p_cnt=0, y_cnt=0;
var tmp = s.toUpperCase();
for(let x of tmp){
if(x === 'P') p_cnt++;
else if(x === 'Y') y_cnt++;
}
if(p_cnt === y_cnt) answer=true;
else answer=false;
return answer;
}
문제 이해
1) 문자열을 모두 대문자로 만들어서 하나하나 확인한다.
2) P일 때와 Y일 때 각각 1씩 카운트해서 개수가 같은지 다른지 확인한다.
- tmp 변수를 만들지 않고 s.toUpperCase(); 만 처리하고 for 문을 돌렸더니 테스트 케이스에 모두 통과되지 않았음. 콘솔로 확인해보니 실수를 확인할 수 있었다.
정답 처리된 코드(2)
좋아요가 가장 많은 다른 사람 코드
function solution(s){
return s.toUpperCase().split("P").length === s.toUpperCase().split("Y").length;
}
문제 이해
1) 한 줄로 리턴 가능.
출처: programmers.co.kr/learn/courses/30/lessons/12916?language=javascript
'알고리즘, 자료구조 > 프로그래머스' 카테고리의 다른 글
[프로그래머스/javascript] k번째수 (0) | 2021.06.14 |
---|---|
[프로그래머스/javascript/카카오 인턴] 키패드 누르기 (0) | 2021.05.06 |
[프로그래머스/javascript] 문자열 다루기 기본 (0) | 2021.04.07 |
[프로그래머스/javascript] 문자열 내 마음대로 정렬하기 (0) | 2021.04.07 |
[프로그래머스/javascript] 문자열 내림차순으로 배치하기 (0) | 2021.04.07 |